Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

COM Addin per VBA deaktivieren
#1
Hey Leute,

ich habe gerade ein paar AddIns per VBA deaktiviert.

Das funktioniert über AddIns("Addin Name").Installed = False

Aber das COM Addin lässt sich so nicht ansprechen. Auch mit dem Makroaufzeichner wird nichts aufgenommen.

Weiß jemand, wie ich dieses COM Addin in VBA deaktivieren kann?
Antworten Top
#2
Hallo,

eine Liste der Add-Ins erhälst Du über diesen Code ...


Code:
Sub COMAddins()
  
  Dim o As COMAddIn
  
  For Each o In Application.COMAddins
     
    Debug.Print o.Description & ", " & o.Connect & ", " & o.progID
    
  Next
  
End Sub

Und deaktivieren kannst Du eines über ...


Code:
Application.COMAddIns("_Hier_die_progID_").Connect = False

Gruß
Microsoft Excel Expert · Microsoft Most Valuable Professional (MVP) :: 2011-2019 & 2020-2022 :: 10 Awards
https://de.excel-translator.de/translator :: Online Excel-Formel-Übersetzer :: Funktionen :: Fehlerwerte :: Argumente :: Tabellenbezeichner
[-] Folgende(r) 1 Nutzer sagt Danke an maninweb für diesen Beitrag:
  • StrammerMax
Antworten Top
#3
Vielen Dank :)

Die Prog ID ist aber nicht der Name des Com Addins?

Mit: Application.COMAddins("Mindjet MindManager Add-In").Connect = False bekomme ich einen Laufzeitfehler 9 "Index außerhalb des zulässigen Bereichs".


Den Code zur Auslese verstehe ich nicht so richtig. Wo werden die IDs ausgegeben? Ich bin mit dem Debugger nicht so fit.
Antworten Top
#4
Hallo,

im VBA Editor das Direktfenster einblenden, z.B. über Strg + G oder den Menüpunkt Ansicht. Dann den
Code zu COMAddins laufen lassen. Das Ergebnis erscheint im Direktfenster bzw. Direktbereich.

Gruß
Microsoft Excel Expert · Microsoft Most Valuable Professional (MVP) :: 2011-2019 & 2020-2022 :: 10 Awards
https://de.excel-translator.de/translator :: Online Excel-Formel-Übersetzer :: Funktionen :: Fehlerwerte :: Argumente :: Tabellenbezeichner
[-] Folgende(r) 1 Nutzer sagt Danke an maninweb für diesen Beitrag:
  • StrammerMax
Antworten Top
#5
Super, danke.
Das gibt dann aus: Mindjet MindManager Add-In, Falsch, Mindjet.Mm15ExcelLinker.AddIn.9

Aber sowohl mit Application.COMAddins("Mindjet.Mm15ExcelLinker.AddIn").Connect = True als auch mit Application.COMAddins("Mindjet MindManager Add-In").Connect = True als auch mit Application.COMAddins("Mindjet.Mm15ExcelLinker.AddIn.9").Connect = True bekomme ich noch den Laufzeitfehler 9 "Index außerhalb des Bereichs".
Antworten Top
#6
Hallo,

da kann ich dann leider nicht viel dazu sagen, denn ich kann es nicht testen.

Gruß
Microsoft Excel Expert · Microsoft Most Valuable Professional (MVP) :: 2011-2019 & 2020-2022 :: 10 Awards
https://de.excel-translator.de/translator :: Online Excel-Formel-Übersetzer :: Funktionen :: Fehlerwerte :: Argumente :: Tabellenbezeichner
[-] Folgende(r) 1 Nutzer sagt Danke an maninweb für diesen Beitrag:
  • StrammerMax
Antworten Top
#7
Ich habe mich mal ein bisschen umgeschaut. Normalerweise müsste noch ein 4. Wert ausgegeben werden, der dann die ID darstellt.
Bei schlecht programmierten AddIns soll er wohl häufiger fehlen.

Dann würde ich das gerne umgehen und einfach alle COM Addins deaktivieren.
Hast du dafür zufällig auch eine Lösung? :)

Die COM Addins sind (bei mir) die extra Reiter in der Menüleiste. Wenn das irgendwie geht würde ich diese auch gleich "aktualisieren", so dass die Reiter dann weg sind ohne Excel neu zu starten.
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste