将Excel中支持的文件复制粘贴到单个Excel中

我有两种不同types的文件。 1是“.tsv”2是“.xlsx”。

我希望我的macros(.xlsm)文件位于放置2个不同文件(.tsv和.xlsx)的文件夹中。 我通常从一些工具下载他们,通常他们被放置在我的默认“下载”文件夹。

问题1:我想让我的macros文件读取格式并将粘贴数据复制到一个excel文件中。 我完成了这个问题。 代码优化是必需的。

问题2:我正在为该文件夹分配手动path,并希望macrosselect该文件夹path,以便它可以复制2个扩展文件并继续。 (试过: ActiveWorkbook.Path ,没有工作)。

 Dim FPath As String, filename As String, FileExt1 As String, FileExt2 As String Sub GetSheets() FPath = "C:\Users\dinekuma\Desktop\Dinesh KT\Macro New UI\" FileExt1 = "*.tsv" FileExt2 = "*.xlsx" 'ActiveWorkbook.Path '"C:\Users\dinekuma\Desktop\Dinesh KT\Macro New UI\" filename = Dir(FPath & FileExt1) Application.ScreenUpdating = False Application.DisplayAlerts = False Do While filename <> "" Workbooks.Open filename:=FPath & filename, ReadOnly:=True For Each sheet In ActiveWorkbook.Sheets sheet.Copy After:=ThisWorkbook.Sheets(1) ActiveSheet.Name = Split(filename, ".")(0) Next sheet Workbooks(filename).Close filename = Dir() Loop filename = Dir(FPath & FileExt2) Application.ScreenUpdating = False Application.DisplayAlerts = False Do While filename <> "" Workbooks.Open filename:=FPath & filename, ReadOnly:=True For Each sheet In ActiveWorkbook.Sheets sheet.Copy After:=ThisWorkbook.Sheets(1) ActiveSheet.Name = Split(filename, ".")(0) Next sheet Workbooks(filename).Close filename = Dir() Loop MsgBox ("Import Successful!") End Sub 

帮助代码优化和自动pathselect活动macros文件。