2016-06-20 2 views
0

Wie lautet der richtige Code, um die Arbeitsmappe in dem referenzierten Dateipfad in Zelle B19 zu speichern? Der Dateipfad sieht wie folgt aus: C: Desktop \ ExcelFiles \ Data Table.xlsbSpeichern Sie eine Arbeitsmappe mit Dateipfad, auf den in Zelle verwiesen wird

With Application 
.ScreenUpdating = True 
.EnableEvents = True 
.DisplayAlerts = True 
End With 

ThisWorkbook.SaveAs Filename:=Sheets("Sheet1").Range("B19").Value 
'^^^Need help understanding the correct syntax of this line ^^^ 
+0

Das sieht gut aus, aber Sie müssen möglicherweise auch das Argument 'FileFormat' für' .xlsb' angeben. Weitere Informationen finden Sie unter "SaveAs-Methode" (https://msdn.microsoft.com/en-us/library/office/ff841185.aspx). Fügen Sie auch 'ThisWorkbook' vor 'Sheets' im Argument' Filename' hinzu. –

+2

Sie sollten die Antwort von Ihrer [letzten Frage] wissen (http://stackoverflow.com/questions/37929284/how-can-i-reference-a-workbook-within-another-workbook-to-automatisch-open-the-). Außerdem benötigt 'C:' einen Schrägstrich. – findwindow

+0

@ScottHoltzman Wo müsste ich auf den Dateityp verweisen? – Hags

Antwort

0

Dies funktionierte für mich.

Sub SaveMe() 

With Application 
.ScreenUpdating = True 
.EnableEvents = True 
.DisplayAlerts = True 
End With 

ThisWorkbook.SaveAs Filename:=Sheets("Sheet1").Range("B19").Value, _ 
     FileFormat:=xlExcel12, CreateBackup:=False 

End Sub 

Grundsätzlich schalten Sie einfach auf den Macro Recorder und den Code ändern, leicht an Ihre Bedürfnisse anpassen.

Verwandte Themen