OnStartupComplete and activeworkbook

  • Thread starter Thread starter mike dilworth
  • Start date Start date
M

mike dilworth

hi all

I have a COM add-in for excel. I want to get the workbook (xls) name when it
loads. So inside
OnStartupComplete i use the valid IDispatch application pointer and query
for the active workbook. Now this works when I click on the xls file
directly, or if i start excel from the command line and pass it the complete
xls file name. However, if I create a shortcut to the xls file and then
start excel by double clicking this the code fails. The workbook is null.

I have noticed that when starting excel in this manner (a shortcut to and
xls file) it is run with the /e flag, which means to start with no workbook.
and I think this is the problem because OnStartupComplete is called before
the xls is actually loaded.



I am wondering if any of you have found this and have a workaround i could
use.



tia



mike
 
Hi MIke,
"OnStartupComplete" get fired when your add-in gets loaded in Excel
instance then your workbook loads in Excel.
You can get the name of the workbook in "WorkbookOpen" event of
Application Object.


Vinit
 
hi Vint

yes indeed you can. Although as I am doing this from a COM add-in in c++
its quite a bit of work to have to implment connection point etc.

the funny thing is that if I open the workbook directly i can get the name,
but if i open the workbook via a shortcut I dont get the workbook.

I can see that from a shortcut excel is opened with the /e switch and it
seems that excel opens, the StartupComplete is fired and then the workbook
loads. Whereas if you open the workbook directly (not a shortcut) then the
workbook is loaded before OnStartupComplete is called.


mike
 

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

Back
Top