我正在尝试使用 VBA 打开文件夹中的文件,条件是它们的名称与其他文件的名称相似,而其他文件的名称也将被打开。
使用以下代码,我打开文件夹 1 中名称为“1_FirmA”、“1_FrimB”、...的文件,然后我对这些文件执行一些命令。
我的问题是,我想打开文件夹 2 中的文件,只要它们的名称与循环中 openend 的文件夹 1 中的文件名称相似。folder2 中文件的名称是 "2_FirmA", "2_FirmB",... 。因此,当我从文件夹 1 打开“1_FirmA”时,我想从文件夹 2 中打开“2_FirmA”。有人知道我如何实现这一目标吗?
此致
Sub MySub()
Dim y As Workbook
Dim z As Workbook
Set fso = CreateOnject("Scripting.FileSystemObject")
Set fldr = fso.GetFolder("path\folder1\")
Set fldr2 = fso.GetFolder("path\folder2\")
For Each yFile in fldr.Files
If fso.GetExtensionName(yFile.Name) = "xlsx" then
Set y = Workbooks.Open(yFile.Path)
'Stuff I want to do with workbook y
End if
Next
End Sub()
这是否有效:
Sub MySub()
Dim y As Workbook
Dim z As Workbook
Set FSO = CreateOnject("Scripting.FileSystemObject")
Set fldr = FSO.GetFolder("path\folder1\")
Set fldr2 = FSO.GetFolder("path\folder2\")
For Each yFile In fldr.Files
If FSO.GetExtensionName(yFile.Name) = "xlsx" Then
Set y = Workbooks.Open(yFile.path)
Set z = Workbooks.Open(fldr2 & "2" & Right(yFile.Name, Len(yFile.Name) - 1))
'Stuff I want to do with workbook y
' stuff you can do with z now
End If
Next
End Sub
只需操作名称并从第二个文件夹打开工作簿,鉴于模式与您提到的相同。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句