excel vba文件管理(功能模块-文件及文件夹-01-文件夹操作)

这个系列集锦一些常用的功能模块,在一些项目中会穿插应用,我来为大家讲解一下关于excel vba文件管理?跟着小编一起来看一看吧!

excel vba文件管理(功能模块-文件及文件夹-01-文件夹操作)

excel vba文件管理

  • 系统环境:Windows 10
  • Excel:2016版本

这个系列集锦一些常用的功能模块,在一些项目中会穿插应用

今天讲讲与文件夹相关的一些操作

主要是使用fso及VBA自带的一些函数


Part 1:准备工作
  1. FSO引入

Set fso = CreateObject("Scripting.FileSystemObject")


Part 2:常用功能
  • 判断文件夹是否已经存在,存在则获取文件夹对象,不存在则创建文件夹

If fso.FolderExists(NewFolderName) Then Set myfolder = fso.Getfolder(NewFolderName) Else Set myfolder = fso.createfolder(NewFolderName) End If

  • 判断文件夹是否已经存在,其中vbDirectory不能省略

If Dir(CurrentDir & NewFolder, vbDirectory) <> "" Then MsgBox "文件夹已存在" End If

  • 以文件夹的绝对地址创建文件夹

CurrentDir = ThisWorkbook.Path & "\" NewFolder = "test" MkDir CurrentDir & NewFolder

  • 删除文件夹,含有子文件一并删除

fso.DeleteFolder (NewFolderName)

  • 删除文件夹,要求文件夹必须为空。若存在文件,可以配合Kill一起使用

RmDir CurrentDir & NewFolder

  • 重命名文件夹,Name 原名称 as 新名称

Name CurrentDir & NewFolder As CurrentDir & "test6"

  • 复制文件夹,fso.CopyFolder 原地址 , 新地址

fso.CopyFolder CurrentDir & "test", CurrentDir & "test8"

  • 遍历文件夹内文件,Wenjian.Name获得是文件的名称(含后缀),但不含绝对地址

For Each Wenjian In fso.GetFolder(CurrentDir).Files WenjianName = Wenjian.Name Next

  • 遍历文件夹内子文件夹,Wenjian.Name获得是文件夹的名称,但不含绝对地址

For Each Wenjianjia In fso.GetFolder(CurrentDir).SubFolders WenjianjiaName = Wenjianjia.Name Next


以上,为本次的介绍内容,下回见。

本文首发于Excel高效办公之VBA。排版和细节略作修改,发于头条

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页