vba读取指定文件夹的文件名属性|vba 遍历指定文件夹(含子目录)获取文件名哪种方法速度最快

vba读取指定文件夹的文件名属性|vba 遍历指定文件夹(含子目录)获取文件名哪种方法速度最快的第1张示图

A. 用EXCEL VBA获取指定目录下的文件名(包括文件夹名)

1、首先利用快捷键“Windows键+R”打开“运行”窗口

B. excel,怎么用vba写段关于查找指定文件夹内的文件名,并将其提取值至表内

Alt+F11插入下面的代码到模块'查找某个文件是否存在Function IsExistFile(ByRef strDir As String, ByRef fileName As String) Dim s As String If (Right(strDir, 1) <> "\") Then strDir = strDir & "\" End If s = dir(strDir & fileName, vbArchive + vbDirectory + vbHidden + vbNormal + vbReadOnly + vbSystem) If (s <> "") Then IsExistFile = fileName Else IsExistFile = "无" End IfEnd Function参数说明strDir为文件夹路径,fileName为文件名使用示例:某个单元格输入=IsExistFile("E:\doc",B2) 即可,若不存在返回无,存在返回B2中的文件名称。路径和文件名可以直接用字符串或引用某个单元格内容。

C. vba 遍历指定文件夹(含子目录)获取文件名,哪种方法速度最快

Sub LoopAllExcelFilesInFolder()Dim wb As WorkbookDim myPath As StringDim myFile As StringDim myExtension As StringDim FldrPicker As FileDialog'这里很关键,决定宏执行快慢的关键Application.ScreenUpdating = FalseApplication.EnableEvents = FalseApplication.Calculation = xlCalculationManual'打开目录选择框Set FldrPicker = Application.FileDialog(msoFileDialogFolderPicker)With FldrPicker.Title = "请选择目录".AllowMultiSelect = FalseIf .Show <> -1 Then GoTo NextCodemyPath = .SelectedItems(1) & "\"End With'取消选择NextCode:myPath = myPathIf myPath = "" Then GoTo ResetSettings'指定过滤的文件后缀myExtension = "*.xls*"'遍历全路径myFile = Dir(myPath & myExtension)'循环处理每一个文件Do While myFile <> ""'打开Set wb = Workbooks.Open(Filename:=myPath & myFile)'确保工作簿被打开,在处理下一个文件时DoEvents'设置背景色wb.Worksheets(1).Range("A1:Z1").Interior.Color = RGB(51, 98, 174)'保存工作簿wb.Close SaveChanges:=True'确保工作簿被关闭,在处理下一个文件时DoEvents'接着处理下一个myFile = DirLoop'提示处理完成MsgBox "处理完成!"ResetSettings:'恢复设置Application.EnableEvents = TrueApplication.Calculation = xlCalculationAutomaticApplication.ScreenUpdating = TrueEnd Sub

D. vba读取指定文件夹的所有文件夹

“当前路径”指的是什么的当前路径?在Office应用程序(如Word或Excel等)中当前打开的文档所在的路径?还是Office这个应用程序所在的路径。如果传入一个“”,好象默认是返回“我的文档”中的第一个文档。所以那个.classPath可能就是你机器上“我的文档”中的第一个文件的文件名。下面这个函数用MsgBox显示给定目录下的所有文件名:Function EnumAllFiles(strPathName As String) Dim strFileName As String strFileName = Dir(strPathName & "*.*") While strFileName <> "" If MsgBox("文件名是 " & strFileName & ". 是否继续枚举?", vbDefaultButton1 Or vbYesNoCancel Or vbQuestion) <> vbYes Then Exit Function strFileName = Dir WendEnd Function

E. Excel中VBA提取文件夹名称的方法

文章介绍excel中使用vba提取文件名的操作步骤。根据需要自行修改vba提取文件名的路径和存放单元格即可。在excel中使用VBA编写代码,可以轻松的提取某个文件夹下面的所有文件名。比如笔者在F盘下面建立了一个文件夹,文件夹的名称是:office教程网,现在想将“office教程网”这个文件夹下面的所有文件名提取出来放在当前工作表的C列。具体的vba提取文件名的操作如下:1.按下ALT+F11,打开VBE编辑器。2.执行“插入——模块”,插入模块1。 3.在右边的代码编辑窗口,复制下面的代码,然后单击“绿色箭头”或者快捷键F5键,运行代码。Private Sub vba提取文件名() Dim FileName As String Dim i As Long FileName = Dir("F:\office教程网\*.*") i = 0 Range("C:C").ClearContents Do While FileName > "" i = i + 1 Cells(i, 3) = FileName FileName = Dir LoopEnd Sub 4.关闭VBE窗口,回到工作表中,可以在C列看到F盘“office教程网”文件夹下面所有的文件名全部罗列在C列了。 关于上面的vba提取文件名的代码,请在实际使用时,根据需要修改提取文件名的路径(F:\office教程网\*.*),以及存放在C列的位置(Cells(i, 3))。

F. EXCEL vba 读取指定文件夹的名字和循环打开文件夹

就是遍历文件夹嘛,关键代码如下在工程-引用里添加 microsoft scripting run time 然后用下面的两个函数递归遍历 就可以了 sub main() Dim objFSO As Object Dim objTemplateFolder As ObjectSet objFSO = New Scripting.FileSystemObject Set objTemplateFolder = objFSO.GetFolder(“D:\”)getFiles objTemplateFolder end subSub getFiles(ByRef theFolder As Object) Dim folder As Object Dim c As New Scripting.FileSystemObject‘此处执行你的操作:打开关闭文件夹,取名字等 For Each folder In theFolder.subFolders getFiles folder ’递归遍历子文件夹 NextEnd Sub

G. VBA语言如何打开指定文件名的文件

在D盘新建一个名为文件的文件夹,在里面创建几个Excel文件。

H. vba读取文件夹中的文件名

提取当前文件夹下的文件名称并放在A列Sub 按钮1_Click()Application.ScreenUpdating = FalseSet fso = CreateObject("scripting.filesystemobject")Set ff = fso.getfolder(ThisWorkbook.Path) 'ThisWorkbook.Path是当前代码文件所在路径,路径名可以根据需求修改ActiveSheet.UsedRange.ClearContentsa = 1For Each f In ff.FilesRem 如果不需要提取本代码文件名,可以增加if语句 if f.name<> thisworkbook.name then…..Rem 如果值需要提取某类文件,需要对f.name的扩展名进行判断Rem 个人感觉split取 扩展名:split(f.name,".")(ubound(split(f.name,"."))),然后再判断,避免文件名还有其他“.”Cells(a, 1) = f.Name '相对路径名Cells(a, 2) = f '全路径名a = a + 1Next fApplication.ScreenUpdating = TrueEnd Sub

I. VBA中怎么读取文件的属性,如修改时间,类型,大小之类的

GetAttr函数 返回文件属性的 返回一个 Integer,此为一个文件、目录、或文件夹的属性。 语法 GetAttr(pathname) 必要的 pathname 参数是用来指定一个文件名的字符串表达式。pathname 可以包含目录或文件夹、以及驱动器。 返回值 由 GetAttr 返回的值,是下面这些属性值的总和: 常数 值 描述 vbNormal 0 常规 vbReadOnly 1 只读 vbHidden 2 隐藏 vbSystem 4 系统文件 vbDirectory 16 目录或文件夹 vbArchive 32 上次备份以后,文件已经改变 vbalias 64 指定的文件名是别名。 注意 这些常数是由 VBA 指定的,在程序代码中的任何位置,可以使用这些常数来替换真正的值。 说明 若要判断是否设置了某个属性,在 GetAttr 函数与想要得知的属性值之间使用 And 运算符与逐位比较。如果所得的结果不为零,则表示设置了这个属性值。例如,在下面的 And 表达式中,如果档案 (Archive) 属性没有设置,则返回值为零: Result = GetAttr(FName) And vbArchive 如果文件的档案属性已设置,则返回非零的数值。 FileDateTime 返回文件修改时间 返回一个 Variant (Date),此为一个文件被创建或最后修改后的日期和时间。 语法 FileDateTime(pathname) 必要的 pathname 参数是用来指定一个文件名的字符串表达式。pathname 可以包含目录或文件夹、以及驱动器。 FileLen 返回文件长度 返回一个 Long,代表一个文件的长度,单位是字节。 语法 FileLen(pathname) 必要的 pathname 参数是用来指定一个文件名的字符串表达式。pathname 可以包含目录或文件夹、以及驱动器。 说明 当调用 FileLen 函数时,如果所指定的文件已经打开,则返回的值是这个文件在打开前的大小。 注意 若要取得一个打开文件的长度大小,使用 LOF 函数。 Dir$ 返回文件是否存在 返回一个 String,用以表示一个文件名、目录名或文件夹名称,它必须与指定的模式或文件属性、或磁盘卷标相匹配。 语法 Dir[(pathname[, attributes])] Dir 函数的语法具有以下几个部分: 部分 描述 pathname 可选参数。用来指定文件名的字符串表达式,可能包含目录或文件夹、以及驱动器。如果没有找到 pathname,则会返回零长度字符串 ("")。 attributes 可选参数。常数或数值表达式,其总和用来指定文件属性。如果省略,则会返回匹配 pathname 但不包含属性的文件。 设置值 attributes 参数的设置可为: 常数 值 描述 vbNormal 0 (缺省) 指定没有属性的文件。 vbReadOnly 1 指定无属性的只读文件 vbHidden 2 指定无属性的隐藏文件 VbSystem 4 指定无属性的系统文件 vbVolume 8 指定卷标文件;如果指定了其它属性,则忽略vbVolume vbDirectory 16 指定无属性文件及其路径和文件夹。 注意 这些常数是由 VBA 所指定的,在程序代码中的任何位置,可以使用这些常数来替换真正的数值。 说明 Dir 支持多字符 (*) 和单字符 (?) 的通配符来指定多重文件。 由于 Macintosh 不支持通配符,使用文件类型指定文件组。可以使用 MacID 函数指定文件类型而不用文件名。比如,下列语句返回当前文件夹中第一个TEXT文件的名称: Dir("SomePath", MacID("TEXT")) 为选中文件夹中所有文件,指定一空串: Dir("") 在 Microsoft Windows 中,如果在Dir函数中使用MacID函数,将产生错误。 任何大于256的attribute值都被认为是MacID 函数的值。 在第一次调用 Dir 函数时,必须指定 pathname,否则会产生错误。如果也指定了文件属性,那么就必须包括 pathname。 Dir 会返回匹配 pathname 的第一个文件名。若想得到其它匹配 pathname 的文件名,再一次调用 Dir,且不要使用参数。如果已没有合乎条件的文件,则 Dir 会返回一个零长度字符串 ("")。一旦返回值为零长度字符串,并要再次调用 Dir 时,就必须指定 pathname,否则会产生错误。不必访问到所有匹配当前 pathname 的文件名,就可以改变到一个新的 pathname 上。但是,不能以递归方式来调用 Dir 函数。以 vbDirectory 属性来调用 Dir 不能连续地返回子目录。 提示 由于文件名并不会以特别的次序来返回,所以可以将文件名存储在一个数组中,然后再对这个数组排序。

J. excel怎样用vba自动提取文件夹内的文件名

excel中用vba实现自动提取文件夹内的文件名的方法如下:

1、新建一个vba宏脚本

未经允许不得转载:山九号 » vba读取指定文件夹的文件名属性|vba 遍历指定文件夹(含子目录)获取文件名哪种方法速度最快

赞 (0)