'-------------------------------------------
'获取某文件夹下的所有Excel文件
'-------------------------------------------
Sub getExcelFile(sFolderPath As String)
On Error Resume Next
Dim f As String
Dim file() As String
Dim x
k = 1
ReDim file(1)
file(1) = sFolderPath &""
End Sub
'-------------------------------------------
'获取某文件夹下的所有文件和子扰者好目录下的文件
'-------------------------------------------
Sub getAllFile(sFolderPath As String)
'Columns(1).Delete
On Error Resume Next
Dim f As String
Dim file() As String
Dim i, k, x
x = 1
i = 1
k = 1
ReDim file(1 To i)
file(1) = sFolderPath &""
'-- 获得所有子目录
Do Until i >k
f = Dir(file(i), vbDirectory)
Do Until f = ""
If InStr(f, ".") = 0 Then
k = k + 1
ReDim Preserve file(1 To k)
file(k) = file(i) &f &""
End If
f = Dir
Loop
i = i + 1
Loop
'-- 获得所有子目录下的所有文件
For i = 1 To k
f = Dir(file(i) &" . ")'通嫌塌配符 . 表示所有文件,*.xlsx Excel文件
Do Until f = ""
'Range("a" &x) = f
Range("a" &x).Hyperlinks.Add Anchor:=Range("缓铅a" &x), Address:=file(i) &f, TextToDisplay:=f
x = x + 1
f = Dir
Loop
Next
End Sub
文章介绍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
Loop
End Sub
4.关闭VBE窗口,回到工作表中,可以在C列看到F盘“office教程网”文件夹下面所有的文件名全部罗列在C列了。
关于上面的vba提取文件名的代码,请在实际使用时,根据需要修改提取文件名的路径(F:\office教程网\*.*),以及存放在C列的位置(Cells(i, 3))。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)