我有以下vba代码打开一个文件夹,我用某些名称保存Excel文件(“11.xlsm和”2.xlsm“)然后自动打开这些文件并复制他们的表格”数据“和将它粘贴到我的masterworkbook“makrotochange”。
ChDir _
"Z:\1000_Entwicklung\05_PROJECT\0558000_CFT\055800L_CFT_Projektleitung\99_Arbeitsordner PL\Tanverdi, Yigit\SAA"
Workbooks.Open Filename:= _
"Z:\1000_Entwicklung\05_PROJECT\0558000_CFT\055800L_CFT_Projektleitung\99_Arbeitsordner PL\Tanverdi, Yigit\SAA\11.xlsm"
Workbooks.Open Filename:= _
"Z:\1000_Entwicklung\05_PROJECT\0558000_CFT\055800L_CFT_Projektleitung\99_Arbeitsordner PL\Tanverdi, Yigit\SAA\2.xlsm"
Windows("makrotochange.xlsm").Activate
Windows("11.xlsm").Activate
sheets("data").Select
sheets("data").Move After:=Workbooks("makrotochange.xlsm").sheets(23)
Windows("2.xlsm").Activate
sheets("data").Select
sheets("data").Move After:=Workbooks("makrotochange.xlsm").sheets(24)
我希望能够在
中打开任意数量的变量命名文件"Z:\1000_Entwicklung\05_PROJECT\0558000_CFT\055800L_CFT_Projektleitung\99_Arbeitsordner PL\Tanverdi, Yigit\SAA"
并将其复制/粘贴到我的“makrotochange.xlsm”masterworkbook。
我该怎么做?
答案 0 :(得分:1)
未经测试,因为我目前无法使用Excel。但是,使用您提供的信息和@Mrig提供的链接,我相信这可能是您正在寻找的基础。
Sub LoopThroughFiles()
Dim StrFile As String
Dim WB As Workbook
Dim InputFilePath As String
InputFilePath = "Z:\1000_Entwicklung\05_PROJECT\0558000_CFT\055800L_CFT_Projektleitung\99_Arbeitsordner PL\Tanverdi, Yigit\SAA\"
StrFile = Dir(InputFilePath & "*")
Do While Len(StrFile) > 0
Set WB = Workbooks.Open(InputFilePath & StrFile)
WB.Activate
Sheets("data").Select
Sheets("data").Move After:=Workbooks("makrotochange.xlsm").Sheets(23)
StrFile = Dir()
Loop
End Sub
EDITED
现在编辑了我能够使用Excel的代码。
这将获取文件夹中的所有文件,打开它们,复制“数据”表,然后将其移至makrotochange.xlsm文件中的表23之后。
虽然有几点兴趣。 您需要确保makrotochange.xlsm文件一开始就打开。 您需要确保所有文件都有一个名为“数据”的工作表。 它们将在第23页之后粘贴。因此,要粘贴的最后一个文件将是第23页旁边的文件。
玩得开心