77范文网 - 专业文章范例文档资料分享平台

VBA文件操作及目录操作(3)

来源:网络收集 时间:2019-03-22 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

Spc(n) 用来在输出数据中插入空白字符,而 n 指的是要插入的空白字符数。

Tab(n) 用来将插入点定位在某一绝对列号上,这里,n 是列号。使用无参数的 Tab 将插入点定位在下一个打印区的起始位置。

expression 要打印的数值表达式或字符串表达式。 charpos 指定下一个字符的插入点。使用分号将插入点定位在上一个显示字符之后。用 Tab(n) 将插入点定位在某一绝对的列号上,用无参数的 Tab 将插入点定位在下一个打印区的起始处。如果省略 charpos,则在下一行打印下一个字符。

功能:将格式化显示的数据写入顺序文件中。

说明:通常用 Line Input # 或 Input 读出 Print # 在文件中写入的数据。

示例:

Open \ ' 打开输出文件。

Print #1, \ ' 将文本数据写入文件。 Print #1, ' 将空白行写入文件。 Print #1, \ ' 数据写入两个区(print zones)。 Print #1, \ ' 以空格隔开两个字符串。 Print #1, Spc(5); \ ' 在字符串之前写入五个空格。 Print #1, Tab(10); \ ' 将数据写在第十列。

' 赋值 Boolean、Date、Null 及 Error 等。 Dim MyBool, MyDate, MyNull, MyError

MyBool = False: MyDate = #2/12/1969#: MyNull = Null MyError = CVErr(32767)

' True、False、Null 及 Error 会根据系统的地区设置自动转换格式。 ' 日期将以标准的短式日期的格式显示。 Print #1, MyBool; \Print #1, MyDate; \Print #1, MyNull; \Print #1, MyError; \Close #1

以上代码写入的内容如下: This is a test

Zone 1 Zone 2 Hello World

5 leading spaces Hello

False is a Boolean value 1969-2-12 is a date Null is a null value

Error 32767 is an error value

13、Width # 语句

语法:Width #filenumber, width

width 必要。范围在 0–255 之间的数值表达式,在新的一行开始之前,指出在该行上可出现多少字符。如果 width 等于 0,则行的长度不受限制。width 的缺省值为 0。

功能:将一个输出行的宽度指定给用 Open 语句打开的文件。

示例: Dim I

Open \

Width #1, 5 ' 设置输出行宽为 5。 For I = 0 To 9 ' 循环 10 次。 Print #1, Chr(48 + I); ' 每行输出五个字符。 Next I Close #1

以上代码写入的内容如下: 01234 56789

四)处理二进制文件

打开二进制文件可以使用Open语句的Random和Binary方式打开。二进制文件读写使用Get和Put语句。

1、Put 语句

语法:Put [#]filenumber, [recnumber], varname

recnumber 可选。Variant (Long)。记录号(Random 方式的文件)或字节数(Binary 方式的文件),指明在此处开始写入。

说明:通常用 Get 将 Put 写入的文件数据读出来。

示例:

Dim num As Long, text As String num = 12345 text = \

Open \ '打开或创建一个二进制文件 Put #1, , num '写入4个字节

Put #1, , text '写入8个字节(字符串长为8) Close #1

2、Get 语句

语法:Get [#]filenumber, [recnumber], varname

recnumber 可选。Variant (Long)。记录号(Random 方式的文件)或字节数(Binary 方式的文件),以表示在此处开始读出数据。

功能:将一个已打开的磁盘文件读入一个变量之中。

说明:通常用 Put 将 Get 读出的数据写入一个文件。

示例:读取以上代码写入的内容 Dim num As Long, text As String Open \Get #1, , num

text = Space$(8) '准备8个字节的字符串 Get #1, , text '读入 Debug.Print num, text Close #1

在立即窗口可以看到如下内容: 12345 a string

3、Seek 语句

语法:Seek [#]filenumber, position

其中position 为介于 1~ 2,147,483,647(相当于 2^31 – 1)之间的数字,指出下一个读写操作将要发生的位置。

功能:在 Open 语句打开的文件中,设置下一个读/写操作的位置。

说明:可以用Seek语句指定Get语句的读取位置,但在 Get 及 Put 语句中指定的记录号将覆盖由 Seek 语句指定的文件位置。

示例:

Dim MaxSize, NextChar, MyChar

Open \

MaxSize = LOF(1) ' 取得文件的总字符数。

' 用循环读入所有记录,但是从最后的记录开始往前读。 For NextChar = MaxSize To 1 Step -1

Seek #1, NextChar ' 设置读写位置。 MyChar = Input(1, #1) ' 读入一字符。 Next NextChar Close #1

4、Seek 函数

语法:Seek(filenumber)

功能:返回一个 Long,在 Open 语句打开的文件中指定当前的读/写位置。

说明:在使用Get语句读取文件时,必须用LOF函数来判断是否到达文件末尾,而不是用EOF函数。可以使用Seek函数判断当前位置,然后与LOF的值比较。

示例:

Do While Seek(1) < LOF(1) '继续读取 ......

Loop

(五)总结

VBA语句的文件操作涵盖了文件操作的绝大部分内容,很多函数的使用也很简单,一般的文件读写也非常方便,特别是对文本文件。但对于复杂的文件读写,代码的结构和维护性都不好。因此在VB6之后,微软引入了FileSystemObject对象模型,提供了面向对象的类库,来操作驱动器、文件夹和文件。但对于二进制文件的操作,目前还只能用VBA语句。

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库VBA文件操作及目录操作(3)在线全文阅读。

VBA文件操作及目录操作(3).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/540302.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: