excel之vba入门与提高(ExcelVBA操作文件)
excel之vba入门与提高(ExcelVBA操作文件)第二种是引用发:Set MyFSO = CreateObject("Scripting.FileSystemObject")创建FSO对象和创建字典对象类似,有两种方法:第一种是直接创建法:Dim MyFSO as Object
FSO对象是什么鬼?它是用来干什么的?
FSO是FileSystemObject(文件系统对象)的简称,提供了在windows中操作本地文件和文件夹的功能,此对象不光可用在VBA编程中,VC,VB编程语言中也可以实用此对象。
FSO 对象模型可以实现文件(夹)的创建、改变、移动和删除等常见操作,也可以获取文件(夹)的名称、大小、属性、创建日期或最近修改日期等信息,还可以检测是否存在指定的文件夹。通过FSO 对象模型可以获取当前系统驱动器信息,如驱动器的种类(CD-ROM还是可移动磁盘)、磁盘剩余空间等等。
怎样创建FSO对象?
创建FSO对象和创建字典对象类似,有两种方法:
第一种是直接创建法:
Dim MyFSO as Object
Set MyFSO = CreateObject("Scripting.FileSystemObject")
第二种是引用发:
首先通过VBE编译器里的 工具->引用->浏览中找到scrrun.dll文件,点击确定,具体操作如下:
然后在VBA代码中,用 Dim MyFSO As New FileSystemObject 来创建新的FSO对象。
FSO对象的属性有哪些?
FSO对象的属性如下:
小伙伴们要着重了解一下:驱动器属性Drivers,
返回一个 Drive 集合 该集合由本地计算机上可用的所有Drive对象组成。
语法格式为:FSO对象.Drives。
应用举例如下:
备注:Drive对象提供对特定磁盘驱动器或网络共享的属性的访问
Drive对象的属性如下:
FSO对象的方法有哪些?
FSO对象的方法有27个,具体如下表:
常用的方法说明如下:
BuildPath方法 将文件夹路径和文件夹或文件的名称组合在一起,并返回与有效路径分隔符的组合语法格式:FSO.BuildPath(Path Name)
Path:必需。组合了_名称_的现有路径。路径可以是绝对路径或相对路径,并且不需要指定现有文件夹。
Name:必需。追加到现有_路径_中的文件夹或文件的名称。
CopyFile 方法,将一个或多个文件从一个位置复制到另一个位置语法格式:FSO.CopyFile Source、destination 、[OverWirte]
Source 必需。字符串文件规范,可以包括通配符来代表要复制的一个或多个文件。
destination 必需。要将 source 中的文件复制到的字符串目标。不能使用通配符。
OverWirte 可选。布尔值,指示是否覆盖现有文件。如果为 True,则覆盖文件,如果为 False,则不覆盖文件。默认为 True。请注意,如果 destination 具有只读属性集,则不管 overwrite 值是什么,CopyFile 都将失败。
CopyFolder方法,将文件夹从一个位置递归复制到另一个位置。语法格式与CopyFile方法相同。
CreateFolder 方法,创建文件夹。语法格式:FSO.CreateFolder(FolderName)
FolderName 必需。 标识要创建的文件夹的字符串表达式。
注意的是:如果指定文件夹已存在,则将出错。
DeleteFile 方法,删除指定文件。语法格式:FSO.DeleteFile filespec [ force ]Filespec 必需。要删除的文件的名称。filespec 可以在最后的路径组件中包含通配符。Force 可选。若要删除带有只读属性集的文件,则 Boolean 值为 True;否则为 False(默认)。DeleteFolder方法,删除指定文件夹及其内容。语法格式与DeleteFile方法相同。DriveExists 方法,如果指定的驱动器存在,则返回 True;否则,返回 False。语法格式:FSO.DriveExists(drivespec)
drivespec 必需。 驱动器根目录的驱动器号或路径规范。
FileExists方法,FolderExists方法,如果指定文件或文件夹存在,则返回True;否则,返回 False。语法格式与DriveExists方法相同。GetFile 方法,返回与指定路径中的文件对应的file 对象。语法格式:FSO.GetFile(filespec)
FileSpec 必需。是特定文件的(绝对或相对)路径。
GetFolder方法,返回与指定路径中的文件夹对应的folder对象。语法格式与GetFile方法格式相同。GetParentFolderName方法,返回一个字符串,其中包含指定路径中最后一个组件的父文件夹的名称。语法格式:FSO.GetParentFolderName(path)
path 必需。要返回其父文件夹名称的组件的路径说明。
MoveFile方法,将一个或多个文件从一个位置移动到另一个位置。语法格式:FSO.MoveFile Source destination
Source 必需。 要移动的一个或多个文件的路径。 source 参数字符串只能在最后一个路径组件中包含通配符。
destination 必需。 一个或多个文件要移动到的路径。 destination 参数不能包含通配符。
MoveFolder方法,将一个或多个文件夹从一个位置移动到另一个位置。语法格式与MoveFile方法相同。此部分内容较多,希望小伙伴们能静下心来阅读,此对象对文件以及文件夹的处理非常方便,下一篇文章将会通过一个具体的实例来加深对此FSO对象的理解。
另外小伙伴们一定要减少出门,响应国家号召,防止感染新型冠状肺炎。