Speichern ohne Makros aber nicht überschreiben

Moderator: ModerationP

Speichern ohne Makros aber nicht überschreiben

Beitragvon Lutz Fricke » 17. Jul 2019, 07:33

Hallo wertes Forum,

ich habe ein Problem mit dem Speichern einer Arbeitsmappe ohne Makros.

Ich habe bisher achtlos folgenden Code verwendet:
Code: Alles auswählen
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs ThisWorkbook.Path & "/Personal/Personalliste " & sTxtSpeicher & ".xlsx", FileFormat:=xlOpenXMLWorkbook
Application.DisplayAlerts = True
Funktioniert super, allerdings habe ich jetzt festgestellt, dass eine evtl. bereits vorhandene Datei überschrieben wird (was ja auch logisch ist...).

Wie kann ich eine Datei ohne Makros speichern, aber trotzdem sicherstellen, dass eine bestehende Datei nicht überschrieben wird?

Vielen Dank für die Hilfe,
Lutz
Lutz Fricke
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 161
Registriert: 27. Mär 2017, 12:12

Re: Speichern ohne Makros aber nicht überschreiben

Beitragvon Nepumuk » 17. Jul 2019, 08:16

Hallo Lutz,

ein Beispiel:

Code: Alles auswählen
Public Sub Test()
    Dim strPath As String
    strPath = ThisWorkbook.Path & "/Personal/Personalliste " & sTxtSpeicher & ".xlsx"
    If Dir$(PathName:=strPath) = vbNullString Then
        Application.DisplayAlerts = False
        ActiveWorkbook.SaveAs strPath, FileFormat:=xlOpenXMLWorkbook
        Application.DisplayAlerts = True
    Else
        Call MsgBox("Die Datei ist schon vorhanden.", vbExclamation, "Hinweis")
    End If
End Sub
De fontibus non est disputandum

Gruß
Nepumuk 8-)
Benutzeravatar
Nepumuk
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 14425
Registriert: 10. Aug 2004, 08:40
Wohnort: Regensburg

Re: Speichern ohne Makros aber nicht überschreiben

Beitragvon slowboarder » 17. Jul 2019, 08:41

Hi

wenn du ohne Rückfrage speichern willst ohne eine bestehende Datei zu überschreiben, dann nimm Datum und Uhrzeit mit in den Dateinamen auf.
dann bekommst du bei jedem Speichern eine neue Version der Datei:

ThisWorkbook.Path & "/Personal/Personalliste " & sTxtSpeicher & Format(Now, " YYYYMMDD_hhmm") & ".xlsx"

Gruß Daniel
slowboarder
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 25850
Registriert: 18. Apr 2009, 13:33

Re: Speichern ohne Makros aber nicht überschreiben

Beitragvon Lutz Fricke » 17. Jul 2019, 09:21

Hallo Ihr zwei,

vielen Dank für die Hilfe.
@slowboarder, da die Datei später automatisch weiterverarbeitet werden soll, brauche ich den fixen Dateinamen. Geht sicherlich auch so wie von Dir beschrieben, aber hätte dann viel Arbeit drumrum nach sich gezogen.
@Nepumuk, an die Lösung hatte ich auch schon gedacht, hatte aber auf eine einfachere Lösung gehofft. Nachdem Du aber dankenderweise den Code gleich fertig mitgeliefert hast, werde ich es so umsetzen.

Vielen Dank,
Lutz
Lutz Fricke
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 161
Registriert: 27. Mär 2017, 12:12


Zurück zu Excel Forum (provisorisch)

Wer ist online?

Mitglieder in diesem Forum: Snoopy_2019, TommyDerWalker und 28 Gäste