xlAutoOpen - doesn't work?

B

br_turnbull

I have a macro that opens another workbook and adds data to it, before
the data is added a macro in the destination workbook needs to be run
so that columns, etc can be added for a new month.

I renamed the macro (destination workbook) Auto_Open and tried calling
it in the source macro by

Workbooks.Open (filePath)
Workbooks(fileName).Activate

ActiveWorkbook.RunAutoMacros Which:=xlAutoOpen

but it never actually runs the macro in the destination workbook called
Auto_Open, an ideas?

Thanks in advance.
 
B

Bob Phillips

Some obvious thoughts perhaps.

Auto_Open is in a standard code module?

You open a workbook, and activate one. They use different variables, so I am
assuming fileName is a subset of filePath. Is this correct? If not, are you
activating the correct workbook? If it is, you don't need the activate, the
open activates it.

--

HTH

RP
(remove nothere from the email address if mailing direct)


"br_turnbull" <[email protected]>
wrote in message
news:[email protected]...
 
D

Dave Peterson

How are you invoking that macro that opens that other workbook?

If you're using a shortcut key and that shortcut key includes the Shift key,
then drop the shift from the shortcut key combination.

Holding the shift down when opening a workbook tells excel not to run the
auto_open/workbook_open code. It can also confuse excel enough so that it stops
when you think it shouldn't.
 
B

br_turnbull

yes filename is a subset of filepath i.e.

filepath = C:\File\workbook.xls
filename = workbook.xls

But i have found a workaround using ThisWorkbook.Workbook_Open() run
the macro when the workbook isn't opened manually. Any ideas how
could mke this conditional, i.e. somehow i could pass it a value an
depending on the value wether it would run or not? the value would hav
to be passed from the source macro
 
D

Dave Peterson

RunAutoMacros won't run unless you tell it to run.

Workbook_open will run unless you tell it not to:

application.enableevents = false
'open your workbook
application.enableevents = true

with .enableevents = false, then the workbook_open event won't fire.
 
D

Dave Peterson

RunAutoMacros won't run unless you tell it to run.
should have been stated as:
Auto_open won't run unless you tell it to run using RunAutoMacros.
 

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

Top