Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.10.2025 10:28:49
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

Forumthread: VBA Button "speichen" / "speichen unter"

VBA Button "speichen" / "speichen unter"
09.06.2005 10:41:24
last-unicorn
Hallo ihr Lieben,
bin in VBA absolut unbedarft und hoffe, jemand von euch kann mir helfen...
Und zwar möchte ich zum einen einen Button integrieren, der mir die aktuelle Version mit den vorgenommenen Änderungen meiner Excel Datei einfach speichert, d.h. die vorherige Version überschreibt.
Das zweite betrifft einen VBA Code zu "Datei speichern unter". Soll heißen: die Ausgangsdatei bleibt bestehen und die Datei in der Änderungen vorgenommen werden wird als neue Datei gespeichert.
Nach langem Stöbern habe ich folgenden Code gefunden:

Sub DateiInNeueMappeSpeichern_Click()
Dateiname = Application.GetSaveAsFilename("Bauzeitenplan_" & ".xls")
ActiveWorkbook.SaveAs (Dateiname)
End Sub

Problem dabei: Falls ich die Datei nicht speichere und auf Abbrechen gehe, wird dennoch eine Datei "FALSE.xls" gespeichert!?!?
Außerdem wird mir als Speicherort das voreingestellte Verzeichnis angeboten. Ich hätte aber gerne das aktuelle Verzeichnis...
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Button "speichen" / "speichen unter"
09.06.2005 10:45:30
Matthias
Hallo Einhorn,
Sub DateiInNeueMappeSpeichern_Click()
Dim Dateiname
ChDrive ThisWorkbook.Path
ChDir ThisWorkbook.Path
Dateiname = Application.GetSaveAsFilename("Bauzeitenplan_" & ".xls")
If Dateiname = False Then Exit Sub
ActiveWorkbook.SaveAs (Dateiname)
End Sub
Gruß Matthias
Anzeige
AW: VBA Button "speichen" / "speichen unter"
09.06.2005 10:59:00
last-unicorn
Wow, klasse, tut!!! Danke :-)))
Und wie geht das mit dem "normalen speichern"?
AW: VBA Button "speichen" / "speichen unter"
09.06.2005 11:03:27
Matthias
Hallo Einhorn,
Strg-S oder den Speichern-Button oder auch
ActiveWorkbook.Save
Vielleicht musst du beim vorherigen Code (Speichern unter) auch von ThisWorkbook auf ActiveWorkbook umstellen. Kommt drauf an, ActiveWorkbook ist das aktive, während ThisWorkbook jenes ist, in welchem eben dieser VBA-Code steht. Kann aber im speziellen Fall auf dasselbe, also egal sein. Du sollst nur wissen, was es bedeutet.
Gruß Matthias
Anzeige
AW: VBA Button "speichen" / "speichen unter"
09.06.2005 11:15:02
last-unicorn
Merci!!!
*freu*
;
Anzeige
Anzeige

Infobox / Tutorial

VBA Button zum Speichern in Excel


Schritt-für-Schritt-Anleitung

Um einen VBA Button zu erstellen, der sowohl die aktuelle Datei speichert als auch die Möglichkeit bietet, die Datei unter einem neuen Namen zu speichern, folge diesen Schritten:

  1. Öffne Excel und gehe auf die Registerkarte "Entwicklertools". Wenn diese nicht sichtbar ist, aktiviere sie über die Excel-Optionen.

  2. Klicke auf "Einfügen" und wähle den Button (Formularsteuerung) aus.

  3. Ziehe den Button auf dein Arbeitsblatt und weise ihm ein Makro zu.

  4. Füge den folgenden Code in das zugewiesene Makro ein:

    Sub SpeicherButton_Click()
       ' Aktuelle Datei speichern
       ActiveWorkbook.Save
    End Sub
  5. Erstelle einen weiteren Button für "Speichern unter" und verwende diesen Code:

    Sub DateiInNeueMappeSpeichern_Click()
       Dim Dateiname As Variant
       ChDrive ThisWorkbook.Path
       ChDir ThisWorkbook.Path
       Dateiname = Application.GetSaveAsFilename("Bauzeitenplan_" & ".xls")
       If Dateiname = False Then Exit Sub
       ActiveWorkbook.SaveAs (Dateiname)
    End Sub
  6. Speichere die Änderungen und teste die Buttons in deiner Excel-Datei.


Häufige Fehler und Lösungen

  • Problem: Nach dem Abbrechen des "Speichern unter" Dialogs wird eine Datei mit dem Namen "FALSE.xls" erstellt.

    • Lösung: Stelle sicher, dass du die Zeile If Dateiname = False Then Exit Sub korrekt implementierst. Diese Zeile verhindert, dass eine Datei gespeichert wird, wenn der Benutzer auf "Abbrechen" klickt.
  • Problem: Der Speicherort wird nicht wie gewünscht eingestellt.

    • Lösung: Nutze die Zeilen ChDrive ThisWorkbook.Path und ChDir ThisWorkbook.Path, um den aktuellen Pfad der Arbeitsmappe als Speicherort festzulegen.

Alternative Methoden

Falls du keine VBA Buttons verwenden möchtest, gibt es auch alternative Methoden, die du ausprobieren kannst:

  • Tastenkombinationen: Drücke Strg + S, um die Datei schnell zu speichern, oder F12, um das "Speichern unter"-Dialogfeld zu öffnen.
  • Ribbon: Nutze den Speichern-Button in der oberen linken Ecke von Excel.

Praktische Beispiele

Hier sind einige Beispiele, wie du die speichern Button-Funktionalität in verschiedenen Szenarien nutzen kannst:

  1. Ein Button, der automatisch die Datei speichert, bevor eine bestimmte Funktion ausgeführt wird, z.B. Datenanalyse.
  2. Ein Button, der eine Kopie der aktuellen Datei mit einem Zeitstempel im Dateinamen speichert, um verschiedene Versionen deiner Arbeit zu verwalten.

Beispiel für einen Button mit Zeitstempel:

Sub SpeichernMitZeitstempel()
    Dim Dateiname As String
    Dateiname = ThisWorkbook.Path & "\Bauzeitenplan_" & Format(Now(), "YYYYMMDD_HHMMSS") & ".xls"
    ActiveWorkbook.SaveAs (Dateiname)
End Sub

Tipps für Profis

  • Verwende Formulare: Wenn du mehrere Buttons benötigst, erstelle ein UserForm, um die Benutzeroberfläche zu verbessern.
  • Fehlerbehandlung: Integriere Fehlerbehandlungsroutinen in deinen VBA-Code, um unerwartete Probleme elegant zu handhaben.
  • Dokumentation: Kommentiere deinen Code gut, um die Wartung und Anpassung zu erleichtern.

FAQ: Häufige Fragen

1. Wie kann ich einen VBA Button in Excel erstellen?
Du kannst einen Button über die Registerkarte "Entwicklertools" hinzufügen, indem du auf "Einfügen" klickst und dann die Schaltfläche auswählst.

2. Was ist der Unterschied zwischen ActiveWorkbook und ThisWorkbook?
ActiveWorkbook bezieht sich auf die Arbeitsmappe, die gerade aktiv ist, während ThisWorkbook die Arbeitsmappe ist, in der der VBA-Code gespeichert ist.

3. Wie kann ich einen Speicher Button für eine bestimmte Datei erstellen?
Du kannst den Code für den Speicher Button anpassen, um einen spezifischen Dateinamen zu verwenden, wie im Beispiel SpeichernMitZeitstempel.

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