PDA

Vollständige Version anzeigen : Wie funktioniert Application.Run


Heck
27.08.2019, 12:27
Hallo liebe VBA Profis
ich habe folgendes Problem.
ich möchte aus einem Word Dokument eine Makro aus einem anderen
Dokument starten. dafür öffne ich per VBA zuerst das Dokument mit
dem Sub Code.

ich krieg leider die Fehlermeldung
Objekt unterstützt diese Eigenschaft oder Methode nicht (Fehler 438)
beim application.Run Befehl

der Code sieht so aus ich weiss leider nicht was falsch ist... ich bin aber auch VBA Neuling

der code ist in dem Dokument Sourcecode.dotm gespeichert
im Modul Sourcecode


Code in Dokument 1
[Sub AutoOpen()
Dim SDoc As Document
Set SDoc = Word.Application.Documents.Open("K:/SourceMakro/Sourcecode.dotm", Visible:=False, PasswordDocument:="0000") 'öffnen des Quellcode

Application.Run "Sourcecode.dotm!Sourcecode.Test_Makro"
' ausführen der Makros

SDoc.Close
End Sub]

der Code der aufgerufen werden soll sieht so aus


Code inDokument2 (Quellcode)
[Sub Test_Makro()
MsgBox "das ist ein test"
End Sub]

ich hoffe ihr könnt mir helfen

Gerhard H
27.08.2019, 13:26
Hallo Heck,

die Fehlermeldung könnte daher kommen, dass ein Dokument keine Eigenschaft .Visible hat. Das ist nämlich eine Eigenschaft der Application.

Außerdem musst du im Run-Befehl vermutlich den kompletten Pfad einsetzen, oder, da du dein Dokument zur Objektvariable gemacht hast, setz doch das in deine Run-Anweisung ein. Also so:
Application.Run " '& sDoc & '!Sourcecode.Test_Makro"
oder so:
Application.Run "K:/SourceMakro/Sourcecode.dotm!Sourcecode.Test_Makro"

Wobei ich annehme, dass Sourcecode das Modul ist, in dem das aufzurufende Makro steckt.

Heck
27.08.2019, 13:30
vielen dank das Problem war die Visible Einstellung hab sie raus genommen und es läuft einwandfrei