Wo eigene Addins ablegen?
#1
Ich habe ein Addin geschrieben, dass in allen Excel Dateien verfügbar sein soll. Anfangs hatte ich es (wie oft vorgeschlagen wird) unter

    C:\Users\[Benutzername]\AppData\Roaming\Microsoft\AddIns

abgelegt. Das funktioniert auf meinem Rechner auch gut.

Allerdings gibt es ein Problem, wenn Kollegen mit einer Excel-Datei arbeiten wollen, die ich erstellt habe und die Makros aus dem Addin verwendet. Die Kollegen haben das Addin auch im gleichen Verzeichnis installiert, der Benutzername ist aber natürlich anders und damit ist es eben auch ein anderes Verzeichnis.

Wenn sie so eine Datei öffnen, hat jeder Makro Aufruf den gesamten Pfad des Ablageortes des Addin auf meinem Rechner vorangestellt, den es auf ihrem Rechner natürlich nicht gibt. Wenn sie "Quelle ändern" nutzen, können sie das natürlich korrigieren und alles funktioniert wieder. Das ist aber etwas umständlich.

Ich hatte auch schon versucht das Addin in einem anderen Verzeichnis abzulegen und dieses Verzeichnis unter Optionen->Erweitert->"Beim Start alle Dateien öffnen unter" anzugeben (natürlich dann genauso bei den Kollegen), so dass die Makros schon vor dem Öffnen einer Datei geladen sind. Das hat leider auch nicht funktioniert.

Habt ihr da einen besseren Weg? Dass mehrere Leute mit dem selben Makro arbeiten ist ja eigentlich nichts ungewöhnliches.

Jürgen
Antworten Top
#2
Hallo Jürgen,

das Add-In nicht lokal speichern, sondern auf dem SERVER in einem Verzeichnis auf das alle in Frage kommenden Mitarbeiter Zugriff (Rechte) haben.
Dann muss jeder MA auf seinem Rechner dieses Add-In einbinden über ...
Datei - Optionen - Add-Ins - Los... - Durchsuchen - auf dem Server das Verzeichnis und Add-In auswählen - Häkchen an - ok
(Ich hoffe, dass es bei deiner Excel-Version auch so geht. Ansonsten vergleichbare Menüs suchen.)

Gruß Sigi
Antworten Top
#3
Hallo Sigi,

das hatte ich auch schon versucht. Allerdings nutzen wir hier Sharepoints und die sind so unzuverlässig, dass es dann beim Laden oft hängt.

Jürgen
Antworten Top
#4
(27.02.2025, 16:15)struct schrieb: Hallo Sigi,

das hatte ich auch schon versucht. Allerdings nutzen wir hier Sharepoints und die sind so unzuverlässig, dass es dann beim Laden oft hängt.

Jürgen

Dann hilft wahrscheinlich nur ein Installationsprogramm/-skript.
Antworten Top
#5
(27.02.2025, 16:49)Warkings schrieb: Dann hilft wahrscheinlich nur ein Installationsprogramm/-skript.

Inwiefern würd das helfen? D.h. was müsste das Skript machen?

Jürgen
Antworten Top
#6
Hallo Jürgen,

wenn es um den späteren Zugriff auf das AddIn-Verzeichnis geht, sollte man das flexibel gestalten. Dann klappt es auch auf anderen Rechnern...

Pfad = "C:\Users\" & Environ$("UserName") & "\AppData\Roaming\Microsoft\AddIns"

oder
Pfad = Environ$("Appdata") & "\Microsoft\AddIns"

Gruß
Karl-Heinz
Antworten Top
#7
Hallo

auf meinem Laptop gibt es im Laufwerk - C:\Windows\addins - einen Ordner für AddIns.
Ist das eine Alternative für euch??  Der Dateipfad kann auf allen Rechnern gleich sein.

mfg Gast 123
Antworten Top
#8
(27.02.2025, 18:30)Gast 123 schrieb: Hallo

auf meinem Laptop gibt es im Laufwerk - C:\Windows\addins - einen Ordner für AddIns.
Ist das eine Alternative für euch??  Der Dateipfad kann auf allen Rechnern gleich sein.

mfg Gast 123

Geht leider nicht, da wir keine Admin Rechte haben.

(27.02.2025, 18:29)volti schrieb: Hallo Jürgen,

wenn es um den späteren Zugriff auf das AddIn-Verzeichnis geht, sollte man das flexibel gestalten. Dann klappt es auch auf anderen Rechnern...

Pfad = "C:\Users\" & Environ$("UserName") & "\AppData\Roaming\Microsoft\AddIns"

oder
Pfad = Environ$("Appdata") & "\Microsoft\AddIns"

Gruß
Karl-Heinz

Aber wo trage ich den Pfad ein?
Antworten Top
#9
Nun, ich kenne ja die Handhabe nicht.

Ich nahm an, dass per Software, also z.B. aus einer von Dir erstellten Datei bei User auf die AddIn-Datei zugefriffen werden soll und dort ein fester Pfad drin steht.

Anstelle dieses festen Pfades dann einfach im Code den flexiblen Pfad nehmen.
Oder ich habe es falsch verstanden.

Environ$("Appdata") & "\Microsoft\AddIns"  an Stelle von C:\Users\[Benutzername]\AppData\Roaming\Microsoft\AddIns

Gruß KH
Antworten Top
#10
Hallo,

C:\Users\[Benutzername]\AppData\Roaming\Microsoft\AddIns
ist identisch mit
Application.UserLibraryPath

Code:
Sub AddInOrdnerOeffnen()
  Shell "explorer " & Application.UserLibraryPath
End Sub

Gruß, Uwe
Antworten Top


Gehe zu:


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