Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: xltm als xlsm speichern

xltm als xlsm speichern
08.05.2018 11:26:52
Max
Hallo,
eine .xltm Datei wird per Doppelklick geöffnet und soll als .xlsm Datei gespeichert werden. Mit dem nachstehenden Makro, welches über eine Schaltfläche ausgelöst wird, hat das bisher auch jahrelang funktioniert. Neuerdings geht es nicht mehr.....
Option Explicit
Option Private Module

Sub SaveAs_Beratung()
Dim Pfad$, Datei$, Filter$, Endg$, File
Pfad = "C:\Beratung\"
Datei = ActiveSheet.Range("J8")
If Datei = "" Then
MsgBox "Ohne Vor- u. Zuname ist kein Speichern möglich", vbExclamation
Exit Sub
End If
Endg = ".xlsm"
If InStr(Datei, Endg) = 0 Then
Datei = Datei & Endg
End If
Filter = "Excel Files (*" & Endg & "), *" & Endg
File = Application.GetSaveAsFilename(Pfad & Datei, Filter)
If File  False Then ActiveWorkbook.SaveAs Filename:=File
End Sub

Es erfolgt der Hinweis: "Die folgenden Features können in Arbeitsmappen ohne Makros
nicht gespeichert werden: VBA Project"
Beim Debuggen wird der fettgeschriebene Teil (ActiveWorkbook.SaveAs Filename:=File) gelb unterlegt.
Da ich hier in einem Netzwerk arbeite, habe ich keine Administratorrechte.
Mir ist aufgefallen, dass sich die Datei Standardendung zwar auf .xlsm ändern läßt, Excel behält diese Änderung aber nicht und steht beim erneuten Öffnen wieder auf .xlsx. (falls das in einem Zusammenhang steht...).
Hat jemand von euch eine Idee, ob es am Makro oder an Excel liegt? Wie gesagt, hat
es jahrelang funktioniert.
Für einen Tip oder eine Lösung wäre ich euch dankbar.
Gruß
Max
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: xltm als xlsm speichern
08.05.2018 11:46:58
AlterDresdner
Hallo Max,
ergänze mal
ActiveWorkbook.SaveAs Filename:=File, FileFormat:=xlOpenXMLWorkbookMacroEnabled
es sollte helfen.
Gruß der AlteDresdner
erledigt: xltm als xlsm speichern
08.05.2018 12:03:32
Max
Hallo AlterDresdner,
es hilft sogar hervorragend, da es mit dem Zusatz wieder funktioniert....;-)))
Recht herzlichen Dank für deine Hilfe!
Gruß
Max
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

xltm als xlsm speichern: So gelingt es dir


Schritt-für-Schritt-Anleitung

  1. Makro öffnen: Öffne deine .xltm Datei und gehe in den VBA-Editor (ALT + F11).

  2. Code anpassen: Füge den folgenden Code in dein Makro ein oder passe es an:

    Sub SaveAs_Beratung()
        Dim Pfad$, Datei$, Filter$, Endg$, File
        Pfad = "C:\Beratung\"
        Datei = ActiveSheet.Range("J8")
        If Datei = "" Then
            MsgBox "Ohne Vor- u. Zuname ist kein Speichern möglich", vbExclamation
            Exit Sub
        End If
        Endg = ".xlsm"
        If InStr(Datei, Endg) = 0 Then
            Datei = Datei & Endg
        End If
        Filter = "Excel Files (*" & Endg & "), *" & Endg
        File = Application.GetSaveAsFilename(Pfad & Datei, Filter)
        If File <> False Then
            ActiveWorkbook.SaveAs Filename:=File, FileFormat:=xlOpenXMLWorkbookMacroEnabled
        End If
    End Sub
  3. Speichern: Führe das Makro aus, indem du die Schaltfläche betätigst, die du dafür vorgesehen hast.

  4. Überprüfen: Stelle sicher, dass die Datei nun als .xlsm gespeichert wird und nicht zurück auf .xlsx wechselt.


Häufige Fehler und Lösungen

  • Fehlende Administratorrechte: Wenn du in einem Netzwerk arbeitest und keine Administratorrechte hast, könnte dies das Speichern deiner Datei beeinflussen. Bitte kontaktiere deinen IT-Support.

  • Fehlermeldung bei VBA-Projekt: Wenn du die Meldung erhältst, dass "die folgenden Features nicht gespeichert werden können", stelle sicher, dass du das FileFormat korrekt angibst (siehe Schritt 2).

  • Dateiendung wechselt zurück: Wenn die Datei beim Öffnen wieder als .xlsx angezeigt wird, überprüfe, ob du die Datei wirklich als .xlsm gespeichert hast. Gehe dazu in die Dateieigenschaften.


Alternative Methoden

Falls das Makro nicht die gewünschte Funktionalität bietet, kannst du die Datei auch manuell speichern:

  1. Gehe zu Datei > Speichern unter.
  2. Wähle den Speicherort aus und setze den Dateityp auf *Excel-Arbeitsmappe mit Makros (.xlsm)**.
  3. Klicke auf Speichern.

Praktische Beispiele

  • Beispiel 1: Du hast eine .xltm Datei, die eine Vorlagenfunktion für Rechnungen bietet. Mit dem obigen Makro kannst du die Rechnung als .xlsm speichern, um sie später zu bearbeiten und zu speichern.

  • Beispiel 2: In einer .xltm Datei hast du mehrere VBA-Module. Achte darauf, dass du das Makro immer mit dem richtigen Dateiformat speicherst, um die VBA-Projekte nicht zu verlieren.


Tipps für Profis

  • Verwende die richtige Dateiendung: Achte darauf, dass du die Datei mit der Endung .xlsm speicherst, um Makros zu erhalten.
  • Regelmäßige Sicherungen: Mache regelmäßige Backups deiner .xltm und .xlsm Dateien, um Datenverlust zu vermeiden.
  • Versionskontrolle: Halte unterschiedliche Versionen deiner Arbeitsmappen, um Änderungen nachverfolgen zu können. Dies kann auch bei der Unterscheidung zwischen xltm vs xlsm hilfreich sein.

FAQ: Häufige Fragen

1. Was ist der Unterschied zwischen .xltm und .xlsm?
Die .xltm Datei ist eine Excel-Vorlage, die Makros enthält, während .xlsm eine Arbeitsmappe mit Makros ist.

2. Warum kann ich meine .xltm Datei nicht als .xlsm speichern?
Möglicherweise liegt es an den durch dein Netzwerk festgelegten Berechtigungen oder an einem Fehler im Makro. Stelle sicher, dass du das FileFormat korrekt angibst.

3. Wie kann ich herausfinden, ob meine Datei korrekt als .xlsm gespeichert wurde?
Überprüfe die Dateiendung im Windows Explorer oder in den Dateieigenschaften.

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