Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Save as ohne jeglicher Nachfrage

Forumthread: Save as ohne jeglicher Nachfrage

Save as ohne jeglicher Nachfrage
20.01.2017 14:58:47
Hermann
Hallo,
ich brauche mal eure Hilfe.
Wie kann ich das Fenster für save as unterdrücken.
Ich kann aber nicht einfache save machen, da ich den Dateinamen erst generiere.
Application.DisplayAlerts = False reicht um Meldung wie Speichern als Makrofrei, usw. zu unterdrücken. Ich möchte aber einfach ohne jeglicher Nachfrage mit generiertem Namen speichern.
Application.DisplayAlerts = False
fileSaveName = Application.GetSaveAsFilename(InitialFileName:=(ThisWorkbook.Path & "\" & FullName), FileFilter:="Excel Workbook (*.xlsx), *.xlsx")
ActiveWorkbook.SaveAs Filename:=fileSaveName, FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
Application.DisplayAlerts = True

Viele Dank im Voraus
Hermann
Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Save as ohne jeglicher Nachfrage
20.01.2017 15:29:13
Hermann
Oh je, so einfach ....
Und ich habe 1h lang gesucht
Habe irgendwie den Wald vor lauter Bäumen nicht gesehen :-(
Application.DisplayAlerts = False
fileSaveName = ThisWorkbook.Path & "\" & FullName
ActiveWorkbook.SaveAs Filename:=fileSaveName, FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
Application.DisplayAlerts = True

Trotzdem einfach mal Danke an dieses Forum hier. Habe mir schon tausende Tipps von euch geholt.
Viele Grüße
Hermann
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Infobox / Tutorial

Excel VBA: Dateien speichern ohne Nachfrage


Schritt-für-Schritt-Anleitung

Um eine Excel-Datei mit VBA ohne jegliche Nachfrage zu speichern, kannst du die folgenden Schritte befolgen:

  1. Setze die Application.DisplayAlerts-Eigenschaft auf False, um die Warnmeldungen zu unterdrücken.
  2. Generiere den Dateinamen, den du verwenden möchtest.
  3. Verwende die ActiveWorkbook.SaveAs-Methode, um die Datei zu speichern.
  4. Setze die Application.DisplayAlerts-Eigenschaft wieder auf True, um zukünftige Meldungen zu aktivieren.

Hier ist ein Beispielcode:

Sub SpeichernOhneNachfrage()
    Dim fileSaveName As String
    Dim FullName As String

    ' Definiere den vollständigen Dateinamen
    FullName = "DeinDateiname.xlsx"

    Application.DisplayAlerts = False
    fileSaveName = ThisWorkbook.Path & "\" & FullName
    ActiveWorkbook.SaveAs Filename:=fileSaveName, FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
    Application.DisplayAlerts = True
End Sub

Häufige Fehler und Lösungen

Fehler 1: Datei wird nicht gespeichert

  • Stelle sicher, dass der Dateipfad korrekt ist. Der Code verwendet ThisWorkbook.Path, also überprüfe, ob der aktuelle Pfad gültig ist.

Fehler 2: Warnmeldung erscheint trotzdem

  • Vergewissere dich, dass Application.DisplayAlerts = False vor dem Speichern gesetzt wurde und vor dem Speichern der Datei nicht erneut auf True gesetzt wird.

Alternative Methoden

Wenn du eine Datei ohne Nachfrage speichern möchtest, könntest du auch die ThisWorkbook.Save-Methode verwenden, wenn du den Namen nicht ändern musst. Dies speichert die Datei einfach im aktuellen Zustand:

Sub EinfachSpeichern()
    Application.DisplayAlerts = False
    ThisWorkbook.Save
    Application.DisplayAlerts = True
End Sub

Diese Methode ist nützlich, wenn du keine Änderungen am Dateinamen oder Format vornehmen möchtest.


Praktische Beispiele

  1. Speichern im .xlsx-Format ohne Nachfrage:
Sub SpeichernAlsXLSX()
    Dim fileName As String
    fileName = "NeuerDateiname.xlsx"

    Application.DisplayAlerts = False
    ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "\" & fileName, FileFormat:=xlOpenXMLWorkbook
    Application.DisplayAlerts = True
End Sub
  1. Datei überschreiben ohne Nachfrage:
Sub UeberschreibenDatei()
    Dim fileName As String
    fileName = "ZuUeberschreibendeDatei.xlsx"

    Application.DisplayAlerts = False
    ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "\" & fileName, FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
    Application.DisplayAlerts = True
End Sub

Tipps für Profis

  • Verwende ActiveWorkbook.Save anstelle von ActiveWorkbook.SaveAs, wenn du die Datei nicht umbenennen musst.
  • Setze immer Application.DisplayAlerts am Ende deines Codes zurück, um ungewollte Meldungen in zukünftigen Operationen zu vermeiden.
  • Wenn du mit mehreren Arbeitsmappen arbeitest, achte darauf, die korrekte Arbeitsmappe aktiv zu haben, bevor du die SaveAs-Methode aufrufst.

FAQ: Häufige Fragen

1. Kann ich das Speichern ohne Nachfrage auch für andere Dateiformate nutzen? Ja, du kannst das FileFormat-Argument in der SaveAs-Methode anpassen, um verschiedene Formate zu speichern, z.B. xlCSV für CSV-Dateien.

2. Was passiert, wenn ich eine Datei mit demselben Namen speichere? Wenn du eine Datei mit einem bereits existierenden Namen speicherst, wird sie überschrieben, solange Application.DisplayAlerts auf False gesetzt ist. Andernfalls wirst du gefragt, ob du die Datei überschreiben möchtest.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige