< návrat zpět
MS Excel
Téma: Doplněk XLAM
Zaslal/a Jeza.m 15.3.2018 9:55
Dobrý den,
Rád bych vytvořil doplněk, který ale chci aby byl sdílený na firemní síti, aby se případná změna promítla opět všem.
Rád bych aby doplněk byl "samoinstalační" a uživatelé nemuseli jít do doplňků a doplněk přidávat.
Doplněk mám připravený a v podstatě se spuštěním XLAM souboru, chci aby se uživateli nainstaloval, kód vypadá následovně ... Public TAddin As AddIn
Private Sub Workbook_Open()
If AddInExist = False Then
If Workbooks.Count = 0 Then Workbooks.Add
Set TAddin = AddIns.Add(ThisWorkbook.Path & "\" & ThisWorkbook.Name, False)
TAddin.Installed = False
TAddin.Installed = True
Else
If TAddin.Installed = False Then
If TAddin.IsOpen = False Then TAddin.Installed = True
End If
End If
Set TAddin = Nothing
End Sub
Public Function AddInExist() As Boolean
AddInExist = False
For Each myaddin In AddIns
If UCase(Left(myaddin.Name, Len("TESTAddIn"))) = "TESTADDIN" Then
AddInExist = True
Set TAddin = myaddin
Exit For
End If
Next
End Function
kdy po otevření dojde k ověření jestli doplněk již existuje (funkce AddInExist) a pokud ano, tak je nastaven do veřejné proměnné, pokud ne, tak je přidán a nastaven do stejné proměnné.
Problém nastane, když chci nastavit vlastnost "TAddin.Installed = True", tady mi to spadne. Myslím, že důvod je ten, že doplněk automaticky padá mezi zakázané doplňky a takovému asi nelze programově nastavit Installed = true.
Tak bych se rád zeptal, jestli už toto někdo neřešil?
Díky
M@
eLCHa(16.3.2018 7:32)#039860 Těžko soudit.
Kdybych si měl tipnout - tak problémem je to síťové umístění. Má to více nevýhod než výhod (mělo by to být v důvěryhodných umístěních - což třeba u nás vůbec nejde nastavit a automaticky to nenastavíte, nebo pokud vypadne síť, nebude dostupné vůbec)
Asi bych šel raději cestou místní instalace - při spuštění kontrola, jestli není na síti nová verze a automatická přeinstalace.
Kdysi jsem tady něco takového zkoušel -
http://wall.cz/index.php?m=topic&id=20272&page=2#post-20400citovat