Speichern mit VBA, wenn Datei vorhanden nichts machen
12.11.2025 20:23:44
Timo
aktuell habe ich mir eine Datei erstellt und ein VBA so gut es funktioniert um eine zweite Datei zu öffnen.
* Dabei wird von der ersten Datei zwei Zellen kopiert und der Inhalt in eine Bestimmte Zelle in der Zweiten Datei eingefügt. Funktioniert.
* Ebenso wird die Zweite Datei unter dem Namen abgespeichert laut Vorgabe.
Mein Problem ist, wenn die Datei schon besteht mit dem Namen darf die Datei nicht überschrieben werden und gespeichert.
Also kurz und knapp, Wenn Dateinamen vorhanden nichts machen.
Bekomme es einfach nicht hin, alleine dieser Code den ich Anhänge habe ich schon eine Ewigkeit gebraucht :-) Profi halt hehehehehe.
Eventuell gibt es eine elegante Lösung dafür.
Sub ZweiteDateiOeffnenUndSpeichern()
Dim quellPfad As String
Dim zielName As String
Dim quellMappe As Workbook
Dim zielMappe As Workbook
' Pfad zur zweiten Datei anpassen
quellPfad = "C:\Users\TimoW\Desktop\Test Datei Excel\Test Datei Excel Bericht.xlsx"
' Zelle anpassen, aus der der Name gelesen werden soll (z.B. A1)
zielName = ThisWorkbook.Sheets("Drucken").Range("J3").Value
Range("J3").Select
Application.CutCopyMode = False
Selection.Copy
' Zweite Datei öffnen
Set quellMappe = Workbooks.Open(quellPfad)
Windows("Test Datei Excel Bericht.xlsx").Activate
Range("C5").Select
ActiveSheet.Paste
Windows("Drucken Chargenblätter 27.08.2025-Linie 8 - 002192 - Rev. 12 - -.xlsm").Activate
Range("J5").Select
Application.CutCopyMode = False
Selection.Copy
Windows("Test Datei Excel Bericht.xlsx").Activate
Range("H5").Select
ActiveSheet.Paste
' Sicherstellen, dass ein gültiger Name vorhanden ist
If zielName = "" Then
MsgBox "Bitte geben Sie einen gültigen Namen in Zelle J3 ein.", vbCritical
quellMappe.Close SaveChanges:=False
Exit Sub
End If
' Aktive Arbeitsmappe speichern
' Speichern Sie die aktuelle Arbeitsmappe unter dem neuen Namen
' Achten Sie darauf, dass Sie den Speicherort selbst festlegen!
ActiveWorkbook.SaveAs Filename:="C:\Users\TimoW\Desktop\Test Datei Excel\" & zielName & ".xlsx", FileFormat:=xlOpenXMLWorkbook
' Wenn Sie die Quelldatei nicht schließen wollen, können Sie diesen Befehl auskommentieren oder löschen
quellMappe.Close SaveChanges:=False
End Sub
Gruß Timo
Anzeige