Uninstall Add-ins when workbook closes

D

Dan

I have a very simple macro I want to run each time I close a workbook. Its
purpose is to uninstall thee excel add-ins. But the macro is not running. I
put it in "ThisWorkbook" in my Personal macro workbook and cannot figure out
why it is not running. I can't even get the messagebox to appear. Any help
is greatly appreciated.

Private Sub Workbook_BeforeClose(cancel As Boolean)

i = MsgBox("TESTING", vbOKOnly, "TESTING")
Call Uninstall_Essbase_and_SmartView

End Sub

Sub Uninstall_Essbase_and_SmartView()

AddIns("Hyperion Essbase OLAP Server DLL (non-Unicode)").Installed = False
AddIns("Hyperion Essbase Query Designer Addin").Installed = False
AddIns("Hyperion Smart View for Office").Installed = False
End Sub
 
P

Per Jessen

Dan said:
I have a very simple macro I want to run each time I close a workbook. Its
purpose is to uninstall thee excel add-ins. But the macro is not running.
I
put it in "ThisWorkbook" in my Personal macro workbook and cannot figure
out
why it is not running. I can't even get the messagebox to appear. Any
help
is greatly appreciated.

Private Sub Workbook_BeforeClose(cancel As Boolean)

i = MsgBox("TESTING", vbOKOnly, "TESTING")
Call Uninstall_Essbase_and_SmartView

End Sub

Sub Uninstall_Essbase_and_SmartView()

AddIns("Hyperion Essbase OLAP Server DLL (non-Unicode)").Installed =
False
AddIns("Hyperion Essbase Query Designer Addin").Installed = False
AddIns("Hyperion Smart View for Office").Installed = False
End Sub


Hi

The macro will never run, where you have i now.

Put the "Workbook_BeforeClose" sub in "ThisWorkbook" in each workbook where
you want to trigger the uninstall sub.

The "Sub Uninstall...." can be in a module in your Personal macro workbook.

//Per
 
D

Dan

is there any way to put something out there that will run when all workbooks
are closed?
 
P

Per Jessen

Hi Dan

If you want to uninstall the add-ins when the last workbook is closed, put
this sub in all workbooks that will be open at the same time. The add-ins
will be uninstalled when only one workbook plus Personal.xls is still open,
but closing.

Private Sub Workbook_BeforeClose(Cancel As Boolean)
If Workbooks.Count = 2 Then ' Personal.xls count as open workbook
i = MsgBox("TESTING", vbOKOnly, "TESTING")
Call Uninstall_Essbase_and_SmartView
End If
End Sub
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Similar Threads


Top