Add-ins not loaded when opening Excel programmatically!

OweSteen

New Member
Joined
Mar 10, 2014
Messages
4
I've seen some similar problems described by others before but no real solution. And I'm sure there is one.
I have a .XLA-add in configured to be loaded when I open up Excel. It works fine when I open documents or Excel it self. However, when my BI-system programmatically creates and opens an Excel-file the add-in does not get loaded. The BI-system opens Excel in a new instance so it does not help to have opened Excel on beforehand (and thereby the .XLA-add in)
If i Check Options-Add Ins it looks like the add-in is loaded but it is not!
What I've tried (and that does work) is to insert this function into the created excel-file and "reload" the add-ins, but I want to find an automated solution!

Code:
<code style="margin: 0px; padding: 0px; border: 0px; vertical-align: baseline; font-family: Consolas, Menlo, Monaco, 'Lucida Console', 'Liberation Mono', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Courier New', monospace, serif; white-space: inherit; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;">[FONT=arial]Function ReloadXLAddins(TheXLApp As Excel.Application) As Boolean
Dim CurrAddin As Excel.AddIn

For Each CurrAddin In TheXLApp.AddIns 

   If CurrAddin.Installed Then       
       CurrAddin.Installed = False 
       CurrAddin.Installed = True 
   End If
Next CurrAddin

End Function[/FONT]</code>

Is there any way to load my Add ins automatically when instancing excel programmatically?
Any tips, solutions or workarounds are highly appreciated!
Best regards.
 
Last edited:

Excel Facts

Move date out one month or year
Use =EDATE(A2,1) for one month later. Use EDATE(A2,12) for one year later.
Code:
Function InstallAddIn(ByVal sPath As String, sName As String) As Boolean
  ' Installs an add-in, returns True if successful.
  Dim oAddIn As AddIn
 
  If Right(sPath, 1) <> "\" Then sPath = sPath & "\"
  On Error Resume Next
  Application.AddIns(sName).Installed = False

  Set oAddIn = Application.AddIns.Add(sPath & sName)
  oAddIn.Installed = True
  InstallAddIn = Err.Number = 0
  Err.Clear
End Function

You could call that from the workbook open event to do it automatically.
 
Upvote 0
Yes, thank you. This I realize.

The problem is just that the file, opened/created by the BI-system does not have any VBA-code. Therefore that is not an option. :(

Any other workaround?
 
Upvote 0

Forum statistics

Threads
1,223,604
Messages
6,173,312
Members
452,510
Latest member
RCan29

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top