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

Forumthread: XLA zu XLAM umwandeln

XLA zu XLAM umwandeln
Thomas
Hallo,
ich habe ein ziemlich umfangreiches Add-In in XLA laufen.
Da jetzt alle meine Mitbenutzer auf Excel 2010 umgestiegen sind, möchte ich auch das Add-In im neuen Dateiformat XLAM speichern.
Wie muss ich vorgehen?
Besten Dank im Voraus
Thomas Tauber
Anzeige
AW: XLA zu XLAM umwandeln
11.02.2012 11:21:03
Hajo_Zi
Hallo Thomas,
einfach speichern unter. Vorher Add In einblenden.

AW: XLA zu XLAM umwandeln
11.02.2012 15:39:36
Thomas
Hallo,
ja, so etwas hatte ich auch in einem Forum gelesen, aber das ist bei mir ausgegraut.
Folgender Hintergrund (und sicherlich die Ursache):
Ich habe eine normale xlsm-Mappe, die in 'Workbook_Open' u.a. folgende Zeile enthält:
Workbooks.Open ActiveWorkbook.Path & "\Dienstplan_Tool_VBA.xla"
Dadurch wird die VBA-Datei geöffnet (man kann sich dann auch die Verweise sparen).
Im VBA-Editor gibt es kein 'Speichern unter...' und direkt in Excel komme ich auch nicht ran.
Öffne ich nämlich die XLA-Datei allein, ist alles ausgegraut (vielleicht, weil darin auch keine sichtbaren Tabellen enthalten sind).
Wie muss ich in diesem Falle vorgehen, damit ich zu 'Speichern unter...' komme?
Viele Grüße
TT
Anzeige
AW: XLA zu XLAM umwandeln
11.02.2012 20:05:13
mumpel
1. In den VBA-Editor wechseln
2. Im Objekt-Explorer das Add-In wählen.
3. Dort in "DieseArbeitsmappe" die Eigenschaft "IsAddin" auf False setzen.
4. Zurück zu Excel wechseln, dann kannst Du das Add-In als XLAM speichern.
AW: XLA zu XLAM umwandeln
11.02.2012 21:42:00
Thomas
Hallo,
Deine Hinweise haben sofort geklappt, besten Dank!
Aber:
Leider kommt der Hinweis, dass wegen 'Anpassungen für den Excel 5.0/95-Menü-Editor' die Daten nicht fehlerfrei konvertiert werden können...
Ich werde mich am Montag mal damit auseinandersetzen, vielleicht finde ich eine Lösung.
Z.Z. weiß ich noch nicht annähernd, auf welches Problem das hindeuten könne.
Trotzdem besten Dank für den hilfreichen Hinweis!
Tom
Anzeige
AW: XLA zu XLAM umwandeln
11.02.2012 21:44:34
mumpel
Du hast da noch Excel95-Modulsheets drin. Diese musst Du durch echte VBA-Module ersetzen. Zuerst neue Module einfügen. Den Code aus den alten Modulsheets in die neuen VBA-Module verschieben und zum Schluß die alten Modulsheets löschen.
AW: XLA zu XLAM umwandeln
11.02.2012 22:02:47
Thomas
Hallo mumpel,
wenn es nicht mehr zu ändern gibt, ist das ja kein Problem ;-)
Besten Dank für Deine erneute Antwort!
Ja, die Anfänge des VBA-Codes liegen weit zurück (1995) und wurden immer erweitert.
Jetzt kann ich das aber nicht mehr 'angehen', sonst ist der Hausfrieden in Gefahr ;-)
Deine Antwort erspart mir aber viel Recherchearbeit.
Klasse, dass es dieses Forum gibt!
Tom
Anzeige
AW: XLA zu XLAM umwandeln
13.02.2012 09:42:59
Thomas
Hallo,
so jetzt hatte ich Zeit, leider:
Ich kann machen was ich will, diese Fehlermeldung kommt weiterhin.
Jetzt habe ich mal probehalber ALLE Module und Forms entfernt, keine Zeile Code steht mehr drin, trotzdem kommt beim Abspeichern, dass nicht alles gespeichert werden kann (wegen 'Anpassungen für den Excel 5.0/95-Menü-Editor').
Speicher ich trotzdem ab, sehe ich in den Modulen/Formulern usw. erst einmal keine Veränderung.
Bei einigen 1000 Zeilen Code hilft mir das aber erst einmal auch nicht wirklich weiter, da ich das dann nicht in 'produktiver Umgebung' einsetzen kann solange ich nicht weiß, wie diese Meldung zustande kommt.
Hat noch jemand eine Idee?
Viele Grüße
Tom
Anzeige
AW: XLA zu XLAM umwandeln
13.02.2012 13:46:37
mumpel
Hast Du auch noch alte Excel4-Makros (z.B. "Rücksprung()" oder ähnliches) und/oder Excel4-Makroblätter drin, dann solltest Du auch diese gegen vernünftige Makros austauschen. Und selbiges gilt für die alten Dialogblätter, diese durch Userformen ersetzen.
Besser und vernünftiger wäre es, die Datei komplett neu aufzubauen. Ohne den alten Excel95-Programmierungen.
Anzeige
AW: XLA zu XLAM umwandeln
13.02.2012 13:59:06
Thomas
Hallo,
das verstehe ich jetzt nicht ganz...
Ich habe wirklich in der Mappe NICHTS mehr drinnen gehabt, keine Zeile Code, keine Form, kein Modul, kein Klassenmodul.
Auch der Code bei 'Arbeitsmappe' war raus.
Was kann da noch versteckt drin sein, dass so eine Meldung kommt?
Viele Grüße
Tom
Anzeige
AW: XLA zu XLAM umwandeln
13.02.2012 14:19:08
mumpel
Wenn Du darfst dann häng das Add-In mal an (als ZIP-Datei, dann wird es kleiner und garantiert auch vom Server akzeptiert).
AW: XLA zu XLAM umwandeln
13.02.2012 15:26:44
Thomas
Hallo,
den ganzen Code kann ich nicht veröffentlichen, aber 'das Problemkind' als geleerte Datei...
https://www.herber.de/bbs/user/78898.zip
Ich habe also allen Code entfernt und das Passwort herausgenommen.
Anbei das Ergebnis.
Schaltet man in 'DieseArbeitsmappe' 'IsAddin' auf 'False', kann man trotzdem nicht ohne Fehlermeldung als XLAM abspeichern....
Ein Workarround wäre natürlich, alle Forms, Module usw. einzeln zu exportieren und in einer neuen leeren XLAM-Datei zu importieren und dann zu hoffen...
Aber wenn jemand den genauen Grund finden könnte, wäre mir 'wohler ums Herz', da damit viele Kollegen arbeiten und ich wiederum die 'Altlasten' nach den vielen Jahren mal hinter mir lassen möchte.
Besten Dank für's Drüberschauen
Tom
Anzeige
AW: XLA zu XLAM umwandeln
13.02.2012 16:02:50
mumpel
Diese Meldung ist normal und auch sinnvoll. Sie besagt, dass irgendwo in der Datei noch eine unter Excel95 erstellte Menü-Programmierung (benutzerdefiniertes Menü) oder Reste davon vorhanden sind. Da es diese Art der Menüprogrammierung in Excel 2010 nicht mehr gibt, fragt Excel vor der Speicherung nach, ob dieses Feature entfernt werden soll, um keine ungewollten Schäden am Original anzurichten. Nur durch das Entfernen der alten Excel95-Features kann im neuen Format gespeichert werden. Also keine Sorgen machen, sondern Meldung mit "OK" bestätigen.
Speichere die XLA zuerst als XLSM. Die bekannte Meldung mit "OK" bestätigen". Anschließend diese XLSM als XLAM speichern.
Besser noch:
Allen Code in eine neue Datei kopieren und dann diese als XLAM speichern. Bis auf Code zum Erstellen eigener Menüs und Symbolleisten, da diese durch ein eigenes Ribbon ersetzt werden sollten.
Anzeige
AW: XLA zu XLAM umwandeln
13.02.2012 16:44:35
Thomas
Hallo,
na da werde ich mir sicherheitshalber doch die Arbeit machen, eine neue Datei als XLSM erstellen, dort sämtlichen Code hineinkopieren und dann als XLAM abspeichern
Trotzdem: Besten Dank!!!
Tom
AW: XLA zu XLAM umwandeln
14.02.2012 10:36:20
Thomas
Hallo,
wollte mich noch einmal melden:
Das Neuerstellen einer XLSM-Datei, das Exportieren aus der alten XLA-Datei, das Importieren der Module usw. in die neue Datei und späteres Speichern unter in XLAM hat alles geklappt.
Jetzt werde ich es für die anderen Kollegen veröffentlichen ;-)
Besten Dank für Eure Hilfe
Tom
Anzeige
Nachtrag
11.02.2012 21:55:56
mumpel
Noch ein kurze Erklärung:
Unter Excel 95 gab es noch keine VBA-Module. Damals nutzte man Modulsheets. Diese sehen zwar aus wie VBA-Module, sind aber keine. Bei Excel95-Modulsheets handelt es sich um "normale" Tabellenblätter, die aber nur im VBA-Editor sichtbar sind. Diese Modulsheets lassen sich auch normal kopieren wie Tabellenblätter, auch bei geschütztem VBA-Projekt.
Anzeige
AW: XLA zu XLAM umwandeln
11.02.2012 11:34:48
mumpel
Hallo!
Dazu musst Du die Makros in eine neue Arbeitsmappe kopieren, diese dann als XLAM speichern. Ein wenig umprogrammieren musst Du dann noch. Siehe hierzu Menüband anpassen mit RibbonX
Gruß, René
AW: XLA zu XLAM umwandeln
11.02.2012 15:40:59
Thomas
Hallo,
ja, das Menüband ist schon neu, das Andere: siehe weiter oben in diesem Thread.
Viele Grüße
Tom
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

XLA in XLAM umwandeln


Schritt-für-Schritt-Anleitung

  1. VBA-Editor öffnen: Drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Add-In auswählen: Wähle im Objekt-Explorer dein Add-In aus.
  3. IsAddin-Eigenschaft ändern: Setze die Eigenschaft IsAddin in "DieseArbeitsmappe" auf False.
  4. Zurück zu Excel: Wechsle zurück zu Excel.
  5. Speichern unter: Wähle "Speichern unter" und wähle das Format .xlam, um dein Add-In zu speichern.

Falls die Option "Speichern unter" ausgegraut ist, liegt es möglicherweise an alten Excel 95 Modulsheets, die noch in deiner Datei vorhanden sind.


Häufige Fehler und Lösungen

  • Problem: "Speichern unter" ist ausgegraut

    • Lösung: Stelle sicher, dass die IsAddin-Eigenschaft auf False gesetzt ist. Wenn das nicht funktioniert, überprüfe, ob noch Excel 95 Modulsheets vorhanden sind.
  • Problem: Fehlermeldung wegen Excel 5.0/95-Menü-Editor

    • Lösung: Diese Meldung tritt auf, wenn Reste der alten Menü-Programmierungen vorhanden sind. Bestätige die Meldung mit "OK" und speichere zuerst als .xlsm, bevor du die Datei als .xlam speicherst.

Alternative Methoden

Eine alternative Methode zum Konvertieren von .xla nach .xlam besteht darin, alle Module und Forms manuell in eine neue .xlsm-Datei zu exportieren. Anschließend kannst du diese Datei als .xlam speichern. Dies kann besonders hilfreich sein, wenn du auf unerwartete Probleme stößt.

  1. Neue Datei erstellen: Erstelle eine neue Excel-Arbeitsmappe.
  2. Code exportieren: Exportiere alle VBA-Module und Forms aus der alten .xla-Datei.
  3. Code importieren: Importiere die Module in die neue .xlsm-Datei.
  4. Speichern als XLAM: Speichere die neue Datei als .xlam.

Praktische Beispiele

Angenommen, du hast ein Add-In, das in Excel 95 erstellt wurde und jetzt auf Excel 2010 umgestellt werden soll. Hier ist ein praktisches Beispiel:

  1. Du öffnest die .xla-Datei in Excel.
  2. Im VBA-Editor stellst du sicher, dass IsAddin auf False gesetzt ist.
  3. Du versuchst, die Datei zu speichern, erhältst aber die Fehlermeldung.
  4. Du entfernst alte Modulsheets und ersetzt sie durch neue VBA-Module.
  5. Schließlich kannst du die Datei als .xlam speichern.

Tipps für Profis

  • Verweise überprüfen: Achte darauf, dass alle Excel VBA Verweise nicht ausgegraut sind, bevor du die Konvertierung vornimmst.
  • Backup erstellen: Erstelle immer ein Backup deiner .xla-Datei, bevor du Änderungen vornimmst.
  • Debugging: Verwende den Debugger im VBA-Editor, um sicherzustellen, dass keine versteckten Fehler im Code vorhanden sind.

FAQ: Häufige Fragen

1. Wie kann ich ein .xla Add-In in eine .xlsm Datei konvertieren?
Speichere die .xla Datei zunächst als .xlsm, indem du im VBA-Editor IsAddin auf False setzt und die Datei dann speicherst.

2. Was sind Excel 95 Modulsheets?
Excel 95 Modulsheets sind spezielle Tabellenblätter, die im VBA-Editor sichtbar sind, aber in Excel nicht angezeigt werden. Sie müssen durch echte VBA-Module ersetzt werden, um die Konvertierung zu ermöglichen.

3. Warum kann ich nicht einfach die .xla Datei speichern?
Alte Menü-Programmierungen aus Excel 95 machen es notwendig, die Datei zuerst zu bereinigen, bevor du sie im .xlam-Format speichern kannst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige