【发布时间】:2017-11-27 17:38:42
【问题描述】:
我在几个子文件夹中有一个主 Excel 文件和 CSV 数据。我现在想从一个子文件夹加载 CSV,启动另一个 VBA 脚本,然后转到下一个子文件夹。
例子:
- MyExcelFile.xlsm
- 国家 1
- ../Data1.csv
- ../Data2.csv
- 国家 2
- ../Data3.csv
- ../Data4.csv
Country1 Report1.csv Report2.csv Country2 报告3.csv 报告4.csv
从 Country1 加载所有 CSV,生成报告,然后转到 Country2 并使用此数据生成报告。
这是我用来加载 CSV 的 VBA(感谢提到的作者):
Sub ImportCSVs()
'Author: Jerry Beaucaire
'Date: 8/16/2010
'Summary: Import all CSV files from a folder into separate sheets
Dim fPath As String
Dim fCSV As String
Dim wbCSV As Workbook
Dim wbMST As Workbook
Set wbMST = ThisWorkbook
fPath = (Application.ActiveWorkbook.Path & "\") 'path to CSV files, include the final \
Application.ScreenUpdating = False 'speed up macro
Application.DisplayAlerts = False 'no error messages, take default answers
fCSV = Dir(fPath & "*.txt") 'start the CSV file listing
On Error Resume Next
Do While Len(fCSV) > 0
Set wbCSV = Workbooks.Open(fPath & fCSV, xlDelimited, Delimiter:=",", Format:=6, Local:=False) 'open a CSV file
wbMST.Sheets(ActiveSheet.Name).Delete 'delete sheet if it exists
ActiveSheet.Move After:=wbMST.Sheets(wbMST.Sheets.Count) 'move new sheet into Mstr
Columns.AutoFit 'clean up display
fCSV = Dir 'ready next CSV
Loop
Application.ScreenUpdating = True
Set wbCSV = Nothing
End Sub
谁能解释一下,我怎样才能转到所有子文件夹并移交 ImportCSVs-CSV 的“子文件夹名称”?我整个下午都在寻找这个,但找不到答案。
提前非常感谢你:-)
【问题讨论】: