快捷搜索:  汽车  科技

vba获取位置(文件夹的操作方法)

vba获取位置(文件夹的操作方法)Set fobj = CreateObject("Scripting.FileSystemObject")首先,我们用到了一个创建文件操作对象的功能:示例,如下图所示:本示例将自动提取当前目录下的文件夹,然后显示到左侧列表中,单击文件夹名称,右侧列表框显示出相应目录下的文件。就是这么简单的一个功能,我们来看一下如何实现。

Excel工作表是做为文件在电脑中进行保存的,其基础原理就是二进制数的排列组合,然后保存为表格文件。

本文介绍一下,如何利用一个对象,对电脑中的文件和文件夹进行操作。

vba获取位置(文件夹的操作方法)(1)

实际上,操作系统最基础部分就是对磁盘中的数据进行读写操作,vba也给出了解决办法。

而且应用也十分简单。重点是要掌握一些基本的文件操作命令,那么使用起来就不难了。

示例,如下图所示:

vba获取位置(文件夹的操作方法)(2)

本示例将自动提取当前目录下的文件夹,然后显示到左侧列表中,单击文件夹名称,右侧列表框显示出相应目录下的文件。

就是这么简单的一个功能,我们来看一下如何实现。

首先,我们用到了一个创建文件操作对象的功能:

Set fobj = CreateObject("Scripting.FileSystemObject")

以前文章中也介绍过此对象的创建方法。

FileSystemObject,中文含意为文件系统对象。

这个对象下面包含的所有磁盘文件目录的一些操作功能。

本节只介绍如何对文件和文件夹进行操作。

也就是其下的子集,Folders 和 Files对象。

利用 set xF=GetFolder(folderDir)语句,可以返回一个文件夹对象,本语句将返回文件夹对象为xF。folderDir为文件夹地址。

然后利用set xFiles=xF.Files 返回,文件夹下面的所有文件的对象集合。

如下图所示:

vba获取位置(文件夹的操作方法)(3)

vba获取位置(文件夹的操作方法)(4)

代码

返回并显示文件夹信息代码:

Sub ShowFolderInfo(folderDir) Dim fs xf xs Set fs = CreateObject("Scripting.FileSystemObject") Set xf = fs.GetFolder(folderDir) xs = xf.DateCreated & VBA.vbCrLf & _ xf.Name & VBA.vbCrLf & _ xf.shortpath & VBA.vbCrLf & _ xf.Size & VBA.vbCrLf & _ xf.Type MsgBox xs Dim fx As Object For Each fx In xf.subfolders Me.ListBox1.AddItem fx.Name 0 Next fx Set fs = Nothing Set fx = Nothing Set xf = Nothing End Sub

vba获取位置(文件夹的操作方法)(5)

单击列表显示文件

Private Sub ListBox1_Click() Me.ListBox2.Clear Dim xPath As String xFolder As String Dim fs xf xs xfiles xPath = ThisWorkbook.Path & "\" xFolder = Me.ListBox1.List(Me.ListBox1.ListIndex) xPath = xPath & xFolder & "\" Set fs = CreateObject("Scripting.FileSystemObject") Set xf = fs.GetFolder(xPath) Set xfiles = xf.Files Dim x As Object For Each x In xfiles Me.ListBox2.AddItem x.Name 0 Next x Set xfiles = Nothing Set xf = Nothing Set fs = Nothing End Sub

对文件的操作,这个对象还是很用的,具体对文件进行什么样的操作,接下来的文章会有介绍,比如打开、新建、复制、删除等等。

欢迎关注、收藏

---END---

猜您喜欢: