我遇到一个问题,我要从多个文件中获取数据并将其复制到当前文件中。我使用数据,现在需要创建一个新文件,其中包含导入文件之一和我创建的新数据中的宏和“样式”。
因此,基本上,我获取一个文件,然后从中删除所有数据。然后将我的数据粘贴到文件中。稍后,我将旧文件和新数据中的宏组合保存到一个新文件中,该文件的名称为“另存为对话框”。
到目前为止,我已经可以导入所有文件,并且我在数据方面的工作做得很好。仅缺少此导出。
我的想法是在导入期间公开文件的路径,然后在导入文件期间使用此路径执行以下操作:
但是,我绝对不知道如何用代码来完成类似的事情。我只需要一些带有解释的代码示例,我希望我可以根据自己的需要对其进行定制。
这是我到目前为止尝试过的代码,但这只是一个常规的“保存我的当前文件”,不包含另一个文件中的任何宏或以另一个文件为基础。
Sub DateiSpeichern()
Dim StandardPfad As String
Dim ExportBlatt As Worksheet
Dim NeueDatei As Workbook
StandardPfad = "C:\X"
Set NeueDatei = Workbooks.Add
ThisWorkbook.Sheets("Test").Copy Before:=NeueDatei.Sheets(1)
Application.DisplayAlerts = False
Sheets(2).Delete
Application.DisplayAlerts = True
'displays the save file dialog
StandardPfad = Application.GetSaveAsFilename(FileFilter:= _
"Exceldateien (*.xlsx), *.xlsx", Title:="Datei speichern", _
InitialFileName:="")
NeueDatei.SaveCopyAs Filename:=StandardPfad
NeueDatei.Close savechanges:=False
End Sub
你好
这是我第一次尝试对其进行编码。它不起作用,但我希望我至少有一个正确的想法。
Sub DateiSpeichern()
Dim StandardPfad As String
Dim ExportBlatt As Worksheet
Dim NeueDatei As Workbook
Dim VorlagenDatei As Workbook
'Sets a default directory
StandardPfad = "C:\Test"
'opens the dialog to choose the template file.
Set VorlagenDatei = Workbooks.Open(StandardPfad)
StandardPfad = Application.GetSaveAsFilename(FileFilter:= _
"Exceldateien (*.xlsx), *.xlsx", Title:="Datei speichern", _
InitialFileName:="")
'copies the selected file (something is wrong here i would assume)
VorlagenDatei.SaveCopyAs Filename:=StandardPfad
'copies my worksheet (Test) into the newly generated (copied) file. Here I need to somehow specifie the range where it is copied to.
ThisWorkbook.Sheets("Tires").Copy Before:=NeueDatei.Sheets(1)