Registriert seit: 24.02.2017
Version(en): 365; (2013)
04.07.2019, 16:01
(Dieser Beitrag wurde zuletzt bearbeitet: 04.07.2019, 16:01 von StrammerMax.)
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?
Registriert seit: 08.05.2014
Version(en): Office 2010, Office 365, Office 365 Betakanal
04.07.2019, 16:42
(Dieser Beitrag wurde zuletzt bearbeitet: 04.07.2019, 16:42 von maninweb.)
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 Awardshttps://de.excel-translator.de/translator :: Online Excel-Formel-Übersetzer :: Funktionen :: Fehlerwerte :: Argumente :: Tabellenbezeichner
Registriert seit: 24.02.2017
Version(en): 365; (2013)
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.
Registriert seit: 08.05.2014
Version(en): Office 2010, Office 365, Office 365 Betakanal
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 Awardshttps://de.excel-translator.de/translator :: Online Excel-Formel-Übersetzer :: Funktionen :: Fehlerwerte :: Argumente :: Tabellenbezeichner
Registriert seit: 24.02.2017
Version(en): 365; (2013)
05.07.2019, 08:22
(Dieser Beitrag wurde zuletzt bearbeitet: 05.07.2019, 08:22 von StrammerMax.)
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".
Registriert seit: 08.05.2014
Version(en): Office 2010, Office 365, Office 365 Betakanal
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 Awardshttps://de.excel-translator.de/translator :: Online Excel-Formel-Übersetzer :: Funktionen :: Fehlerwerte :: Argumente :: Tabellenbezeichner
Registriert seit: 24.02.2017
Version(en): 365; (2013)
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.