首先肯定要用宏来实现。
可以把要打开的文件放到一个统一目录里,使用宏依次打开并读取数据,然后根据你的逻辑写入新文件中。
下面是个简单例子,测试通过。
读取宏文件和csv文件在一个目录里,宏通过当前程序得到当前目录,从当前目录里依次打开每个文件(当前宏文件跳过),读取每个csv文件第2行,贴到当前宏文件里。
注意运行前只打开宏文件,另外,若需要,手工删除sheet1里存在内容,不了解你具体详细的需求,就做个例子提供一下参考。
Sub zzh_abc()
On Error GoTo out1
Dim Fso As Object
Set Fso = CreateObject("Scripting.FileSystemObject")
Set folder = Fso.GetFolder(ThisWorkbook.Path)
i = 1
For Each f In folder.Files
If InStr(f.Name, ThisWorkbook.Name) = False Then
Filename = ThisWorkbook.Path & "\" & f.Name
Workbooks.Open Filename:=Filename
Rows("2:2").Select 'select row to copy
Selection.Copy
Application.DisplayAlerts = False
Workbooks(2).Close savechanges:=False
'Worksheets("sheet1").Select
Cells(i, 1).Select 'copy by increasing one new line
ActiveSheet.Paste
i = i + 1
End If
Next
Exit Sub
out1:
End Sub
温馨提示:答案为网友推荐,仅供参考