Link to home
Start Free TrialLog in
Avatar of Don Smith
Don SmithFlag for United States of America

asked on

Making Excel Workbook work invisibly

Tricky problem:

Excel Workbook 1 wants to open Excel Workbook 2 and to execute a function therein which reads a database, fills out his main sheet with data of various kinds, saves himself to disk and returns to Workbook 1.  Workbook 2 is also used interactively with humans (at other times) for manual data input and explicit saving to file.

EW1 may call EW2 many times (from vba), and wants to show a message like "Processing Invoice 121" for each run (on EW1).

500 points up for grabs.

This works, but the screen keeps flashing blanks during EW2's execution.

How can I get the background EW2 from causing screen changes (like WB.visible = false, which I can't make work)?

Anu suggestions?
ASKER CERTIFIED SOLUTION
Avatar of Rgonzo1971
Rgonzo1971

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Hiding the Application will work as Rgonzo's code. However, you will need error handling to ensure that the application is restored if an error occurs, if not you will end up with a hidden instance of Excel.

You could crate an excel addin that would hold the code and create the required report.
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Sorry I misread, but I would consider working with an addin
Avatar of Don Smith

ASKER

Thanks for the suggestions, guys.  I've run into a small complication on my end which will cause me to first test Rgonzo1971's solution after the weekend.  Will report back.
I've requested that this question be closed as follows:

Accepted answer: 500 points for Rgonzo1971's comment #a41502294

for the following reason:

This question has been classified as abandoned and is closed as part of the Cleanup Program. See the recommendation for more details.
Got it working with simple window screenupdate false and window hide.