打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Excel之VBA常用功能应用篇:VBA进行文件管理

No.1

VBA用于文件管理,并不是被大多数人熟知,通过Excel进行文件操作也是一件说难不难,说容易并不容易的事儿。

本节介绍一下如何对电脑文件进行复制、移动、删除、等操作。

首先认识一个对象。

File对象,翻译过来就是文件对象。

可以对文件进行复制、删除、移动、修改等等各种操作,并且可对提取文件的属性。

下图为对象的方法以及属性,要重点记住,对文件进行操作十分重要。

No.2

示例

对于文件操作,首先要对文件系统有一个初步了解,如果不清楚文件系统包含哪些内容,那么建议别学File对象,真的很难。

如果对Dos系统或Linux系统,熟练应用文件操作,那么学习File对象就十分简单了。

下图是围绕File对象做出了一个示例,包含了大多数方法应用和属性提取,如果完全掌握,那么就对文件对象操作有了一个很全面的认识。

左侧按钮分别执行不同的功能。

右侧表格是提取某个文件之后列出其文件信息,如创建日期目录地址等等属性。

下图为执行过程中选择文件对话框。

No.3

代码

如何创建File对象

Dim fs, fSet fs = CreateObject("scripting.FileSystemObject")Set f = fs.GetFile(FileName)

定义两个变量,分别给变量赋值。

变量fs为定义的FileSystemObject对象提供对计算机文件系统的访问权限,变量f返回一个Files对象。

其中FileSystemObject是一个重要的文件系统管理对象,也可以实现对文件的操作,但是其方法实在太多,本节不做介绍。

重点看一下其下的GetFile方法,此方法将返回一个File对象,也就是本节的主要内容。

变量f就是要进行各类文件操作的File对象。

函数:返回一个File对象

Public Function GetFileObject() As Object '取文件返回File对象Dim FileName As StringWith Application.FileDialog(msoFileDialogFilePicker)If .Show = -1 Then.Filters.Clear.Filters.Add "文本文件", "*.txt".Title = "选择文件"FileName = .SelectedItems(1)ElseSet GetFileObject = NothingExit FunctionEnd IfEnd WithDim fsSet fs = CreateObject("scripting.FileSystemObject")Set GetFileObject = fs.GetFile(FileName)Set fs = NothingEnd Function

上述函数将返回一个File对象,代码执行后将打开一个文件选择器,选择一个文本文件后返回被选文件对象,如果不选择文件就返回一个空对象。

提取文件信息

Private Sub GetFileinfo() '提取文件信息Set f = GetFileObject'调用提取File对象函数If f Is Nothing Then GoTo Ex100'如果对象是Nothing退出Dim sh As Worksheet, cell As Range, xcell As RangeSet sh = ActiveSheetSet cell = sh.Range("C4:C15")Dim infoArr(0 To 11), i As IntegerFor i = 0 To cell.Rows.CountSelect Case iCase 0infoArr(0) = f.Attributes'文件属性Case 1infoArr(1) = f.datecreated'创建日期Case 2infoArr(2) = f.datelastaccessedCase 3infoArr(3) = f.datelastmodifiedCase 4infoArr(4) = f.drive'驱动器Case 5infoArr(5) = f.Name'文件名Case 6infoArr(6) = f.parentFolderCase 7infoArr(7) = f.Path'文件路径Case 8infoArr(8) = f.shortnameCase 9infoArr(9) = f.shortpathCase 10infoArr(10) = f.Size'文件大小Case 11infoArr(11) = f.Type'文件类型End SelectNext iSet cell = cell.Item(1).Offset(0, 2).Resize(cell.Rows.Count, 1)cell = Application.WorksheetFunction.Transpose(infoArr)Ex100:Set f = NothingEnd Sub

完全理解并学会上面的代码,就对文件操作有一个基本认识了,在实践过程中继续学习,很快就会熟悉操作计算机内的文件信息。

制作一个文件管理系统就可以大显身手了。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
VBA编程,文件夹的操作方法,Folder对象,一学就会
VB FileSystemObject对象 详解
FileExists方法,VBA程序能够快速有效查找文件的钥匙
使用VBA操作文件(11):处理文件、文件夹和驱动器的VBA技术和技巧
如何用vba删除某个文件夹及其子文件和所有文件?
VBA使用FileSystemObject将读取或写入文本文件(一) — Windows ...
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服