GIS资讯 GIS技术 GIS产品 GIS书籍 GIS下载 GIS知识 GIS论文 GIS考研 GIS人物 GIS企业 GIS招聘 GPS相关 RS 相关 3D 相关 测绘相关 GIS博客 招标信息
您当前的位置:GIS资讯小组资讯中心GIS论文 → 资讯内容
Google
Excel-VBA操作文件四大方法之二
作者:佚名  来源:不详  更新时间:2008-1-3 11:25:37

减小字体 增大字体

  

二、利用VBA文件处理语句来处理文件

    VBA包含了许多用于文件操作的语句和函数,可以满足绝大多数情况下的文件操作要求。下面我们按照操作目的进行一一介绍。

(一)文件处理
   
1.Name 语句

语法:Name oldpathname As newpathname

功能:重命名一个文件、目录、或文件夹,移动一个文件。

说明:在一个已打开的文件上使用 Name,将会产生错误。进行文件操作时,一定要注意错误处理。

示例:
On Error Resume Next    '错误处理
Name "f:\TEST.xls" As "f:\TEST123.xls"  '重命名
Name "f:\TEST.xls" As "f:\dll\TEST.xls"  '移动文件
Name "f:\TEST.xls" As "d:\TEST123.xls"  '跨驱动器移动并重命名文件

注意:Name不能移动一个目录或文件夹。

2、FileCopy 语句

语法:FileCopy source, destination

功能:复制一个文件。

说明:如果对一个已打开的文件使用 FileCopy 语句,则会产生错误。

示例:
FileCopy "f:\TEST.xls", "e:\TEST.xls"  '从F盘复制TEST.xls到E盘

3、Kill 语句

语法:Kill pathname

功能:从磁盘中删除文件。

说明:Kill 支持多字符 (*) 和单字符 (?) 的统配符来指定多重文件。如果使用 Kill 来删除一个已打开的文件,则会产生错误。

示例:
Kill "f:\TEST.xls"  ’删除F盘的TEST.xls文件
Kill "f:\*.xls"   ' 删除F盘所有xls文件

4、GetAttr 函数

语法:GetAttr(pathname)

功能:获取一个文件、目录、或文件夹的属性。返回一个 Integer值。

返回值

由 GetAttr 返回的值,是下面这些属性值的总和:

常数    值   描述
vbNormal   0   常规
vbReadOnly   1   只读
vbHidden   2   隐藏
vbSystem   4  系统文件
vbDirectory   16   目录或文件夹
vbArchive   32   存档文件
vbalias   64   指定的文件名是别名。只在Macintosh中可用。

说明:若要判断是否设置了某个属性,在 GetAttr 函数与想要得知的属性值之间使用 And 运算符与逐位比较。如果所得的结果不为零,则表示设置了这个属性值。

示例:
Debug.Print GetAttr("F:\test.txt") '若为存档文件,在立即窗口可看到值为32
Debug.Print GetAttr("F:\test.txt") '将属性—高级—可存档文件的勾去掉后,值为0

为判断一个文件是否只读,可用下法:
Debug.Print GetAttr("F:\test.txt") And vbReadOnly
若值非零,说明时只读的。

5、SetAttr 语句

语法:SetAttr pathname, attributes

功能:为一个文件设置属性。

说明:如果想要给一个已打开的文件设置属性,则会产生运行时错误。

示例:
SetAttr"F:\test.txt", vbHidden       ' 设置隐藏属性。
SetAttr"F:\test.txt", vbHidden + vbReadOnly      ' 设置隐藏并只读。

6、FileLen 函数

语法:FileLen(pathname)

功能:获取一个文件的长度,单位是字节。

说明:当调用 FileLen 函数时,不需要打开文件,如果所指定的文件已经打开,则返回的值是这个文件在打开前的大小。

7、FileDateTime 函数

语法:FileDateTime(pathname)

功能:获取一个文件被创建或最后修改后的日期和时间。

示例:
Debug.Print FileDateTime("F:\TEST.xls")  '在立即窗口可看到2007-3-29 19:28:27


(二)目录处理

1、CurDir 函数

语法:CurDir[(drive)]

功能:返回当前的路径。

说明:drive 参数是可选的,它指定一个存在的驱动器。如果没有指定驱动器,或 drive 是零长度字符串 (""),则 CurDir 会返回当前驱动器的路径。

示例:
Debug.Print CurDir      ' 返回“C:\Documents and Settings\yc\My Documents”。
Debug.Print CurDir("C")     ' 返回“C:\Documents and Settings\yc\My Documents”。
Debug.Print CurDir("D")     ' 返回“D:\”。

2、ChDir 语句

语法:ChDir path

功能:改变当前的目录或文件夹。

说明:ChDir 语句改变缺省目录位置,但不会改变缺省驱动器位置。缺省驱动器一般是C。

示例:

ChDir "D:\temp"
Debug.Print CurDir      ' 返回“C:\Documents and Settings\yc\My Documents”。
Debug.Print CurDir("D")     ' 返回“D:\temp”。
与上例比较,此时D盘的当前目录已经变为“D:\temp”,但是缺省驱动器还是C。

3、ChDrive 语句

语法:ChDrive drive

功能:改变当前的驱动器。

说明:如果使用零长度的字符串 (""),则当前的驱动器将不会改变。如果 drive 参数中有多个字符,则 ChDrive 只会使用首字母。

示例:
ChDrive "D"
ChDir "D:\temp"
Debug.Print CurDir      ' 返回“D:\temp”。
Debug.Print CurDir("D")     ' 返回“D:\temp”。

与上例比较,用CurDir返回的是“D:\temp”,当前驱动器已经变为D了。

4、Dir 函数

语法:Dir[(pathname[, attributes])]
      两个参数都是可选的,attributes表示文件属性。

[1] [2]  下一页



[] [返回上一页] [打 印]
资讯评论 (评论内容只代表 GISTM 网友观点,与本站立场无关!)

用户名: * 查看 GISTM 更多评论

分 值:100分 85分 70分 55分 40分 25分 10分 0分

内 容:

         ( 注意“*”必填,请自觉遵守法律法规!) 验证码: 验证码,看不清楚?请点击刷新验证码

推荐文章/热门文章
相关文章/相关下载
关于本站 - 免责声明 - 帮助(?) - 友情连接 - 网站地图 - 网站留言