Hallo,
ich habe folgenden Sachverhalt:
In einem Word 2007 habe ich eine Datei geöffnet, in der ein Makro nach dem Öffnen dieser Datei automatisch gestartet wird.
Dabei bin ich so vorgegangen, dass ich in Word 2007 auf die Makroeinstellungen klickte, und mit dem Button "Bearbeiten" den VB-Editor öffnete.
Unter "Normal" ist folgendes im Editor eingetragen:
Sub MakroTest()
'
' MakroTest Makro
'
Selection.TypeText Text:="Das ist ein Makrotest"
End Sub
Im Projektordner links oben im Editor habe ich unter "Normal->Microsoft Word Objekte->ThisDocument" folgende Zeile eingetragen, damit das Makro bei jedem Öffnen der Datei automatisch ausgeführt wird:
Private Sub Document_Open()
MakroTest
End Sub
Das funktioniert so weit ganz gut.
Dabei entstanden aber einige offene Fragen.
-
Das docm-Format dient angeblich dazu, dass Macros automatisch "enabled" sind. Warum verhält sich dann docx genauso wie docm?
Bei beiden Formaten wird mein Makro nämlich automatisch gestartet. -
Wenn ich diese Datei als doc abspeichere, wird das Makro ebenfalls automatisch ausgeführt, was ich auch so will.
Meine wichtigste Frage ist allerdings, wie ich es hinbiegen kann, dass das Makro auch in einem anderen Office 2007 oder 2003 funktioniert. Nehme ich nämlich die Datei und öffne ich sie in einem anderen Office 2007 oder 2003, sind die Makros gar nicht vorhanden? Wie nehme ich also die Makros mit?
Ich versuchte weiters unter dem Button "Organisieren" in den Makro-Einstellungen unter dem Reiter "Makroprojektelemente", die Klassen (oder wie auch immer das hier heißt), von "In Normal.dotm" nach links in das vermeintliche Doc-Datei-Projekt zu kopieren.
Ich kenne mich damit zu wenig aus. Ich beobachtete aber, dass die Makros beim Ausprobieren überhaupt nicht mehr automatisch gestartet werden, also in dem Sinn nicht mehr funktionierten.
Es sieht so aus, als ob nichts in dem internen VBA-Projekt stehen darf.
Lösche ich die vorher kopierten Klassen wieder heraus, sodass wiederum alles nur mehr in "In Normal.dotm" steht, funktioniert das automatische Ausführen der Makros wieder.
Hat jemand Kenntnisse darüber?
Markus