Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Speichern per VBA mit Text und Zellinhalt als Name

Forumthread: Speichern per VBA mit Text und Zellinhalt als Name

Speichern per VBA mit Text und Zellinhalt als Name
16.02.2005 12:16:59
Bernd
Hallo,
folgendes Problem:
Ich hab ein Excel Formular, in dem in Zelle „K8“ ein Abrufdatum eingetragen wird.
Letztendlich wird das Formular unter dem Namen „Stempelzeiten“ & eben dem Abrufdatum (also bspw. „Stempelzeiten 15.02.05“) manuell gespeichert.
Da ich eh schon ein Makro benutze möchte ich gern noch festlegen, dass das erstellte Formular automatisch gespeichert wird
Das ist ja der normale VBA-Code zum speichern einer Datei mit Namen „Stempelzeiten 15.02.05“ ins Vereichnis C:\tmp:
ChDir "C:\temp"
ActiveWorkbook.SaveAs Filename:="C:\temp\Stempelzeiten 15.02.05.xls", _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
Und das der VBA-Code zum Übernehmen in die Kopfzeile (vielleicht hilft die etwas dabei!)

.LeftHeader = "Stempelzeiten vom " & Sheets("TATU1").Range("K8").Value
Nur wie schaffe ich es, dass Excel den Dateinamen aus „Stempelzeiten “ und dem Inhalt von Zelle „K8“ automatisch zusammensetzt und speichert?
Kann mir da jemand helfen?
Gruß
Bernd S.
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Speichern per VBA mit Text und Zellinhalt als Name
Uduuh
Hallo,
filename:="c:\temp\stempelzeiten " &Range("K8") &".xls
Gruß aus'm Pott
Udo

Probiers mal so:
16.02.2005 12:37:58
Franz
Hallo Bernd,
ActiveWorkbook.SaveAs Filename:="C:\temp\Stempelzeiten " & Range("K8") & ".xls"
Grüße
Franz
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Speichern per VBA mit Text und Zellinhalt als Name


Schritt-für-Schritt-Anleitung

Um ein Excel-Dokument automatisch mit einem Namen, der aus einem festen Text und dem Inhalt einer Zelle besteht, zu speichern, kannst Du den folgenden VBA-Code verwenden. Hier sind die Schritte:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu starten.

  2. Füge ein neues Modul hinzu, indem Du im Menü Einfügen auf Modul klickst.

  3. Kopiere den Code unten in das Modul:

    Sub SpeichernMitDatum()
        Dim Abrufdatum As String
        Abrufdatum = Sheets("TATU1").Range("K8").Value
    
        ChDir "C:\temp"
        ActiveWorkbook.SaveAs Filename:="C:\temp\Stempelzeiten " & Abrufdatum & ".xls", _
            FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
            ReadOnlyRecommended:=False, CreateBackup:=False
    End Sub
  4. Schließe den VBA-Editor und gehe zurück zu Excel.

  5. Führe das Makro aus, um das Dokument automatisch zu speichern.

Mit diesem Code wird das Excel-Dokument unter dem Namen "Stempelzeiten" gefolgt von dem Datum aus Zelle K8 gespeichert.


Häufige Fehler und Lösungen

  • Fehler: "Pfad nicht gefunden"

    • Stelle sicher, dass der Pfad C:\temp existiert. Erstelle den Ordner gegebenenfalls, bevor Du das Makro ausführst.
  • Fehler: "Dateiname ungültig"

    • Achte darauf, dass das Datum in K8 korrekt formatiert ist. Ungültige Zeichen im Dateinamen (wie z.B. /, \, :, *, ?, ", <, >, |) führen zu diesem Fehler.

Alternative Methoden

Wenn Du das Excel-Formular in ein PDF-Formular umwandeln möchtest, kannst Du die folgende Methode verwenden:

  1. Verwende den ExportAsFixedFormat-Befehl in VBA, um das Dokument als PDF zu speichern:

    Sub ExportierenAlsPDF()
        Dim Abrufdatum As String
        Abrufdatum = Sheets("TATU1").Range("K8").Value
    
        ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
            Filename:="C:\temp\Stempelzeiten " & Abrufdatum & ".pdf", _
            Quality:=xlQualityStandard, IncludeDocProperties:=True, _
            IgnorePrintAreas:=False, OpenAfterPublish:=False
    End Sub

Diese Methode ist besonders nützlich, wenn Du ein Excel Formular in ein PDF Formular umwandeln möchtest.


Praktische Beispiele

  • Wenn in Zelle K8 der Wert 15.02.05 steht, wird die Datei unter dem Namen Stempelzeiten 15.02.05.xls gespeichert.
  • Bei Verwendung der PDF-Methode wird die Datei als Stempelzeiten 15.02.05.pdf gespeichert.

Tipps für Profis

  • Fehlerbehandlung einfügen: Es ist ratsam, Fehlerbehandlungsroutinen in Deinen Code einzufügen, um mögliche Fehler beim Speichern abzufangen.

    On Error GoTo Fehler
    ' Dein Speichercode hier
    Exit Sub
    
    Fehler:
    MsgBox "Fehler beim Speichern: " & Err.Description
  • Benutzerdefinierte Dateinamen: Du kannst den Dateinamen dynamisch anpassen, indem Du weitere Zellinhalte oder Eingaben vom Benutzer hinzufügst.


FAQ: Häufige Fragen

1. Frage Wie kann ich den Speicherort ändern?

Antwort: Ändere den Pfad in der ChDir-Anweisung zu dem gewünschten Speicherort, z.B. ChDir "D:\Dokumente".

2. Frage Was passiert, wenn der Dateiname bereits existiert?

Antwort: Excel wird eine Fehlermeldung anzeigen. Um dies zu vermeiden, kannst Du prüfen, ob die Datei bereits existiert, und entsprechend handeln.

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