Jump to content
Sign in to follow this  
Mongoose

_ExcelBookOpen() with Read-Only Recommended Switched On

Recommended Posts

Mongoose

I have a spreadsheet which has been saved with the 'read-only recommended' option switched on.

If I try to open the spreadsheet using the _ExcelBookOpen() function, a dialog box pops up which tells me that it is recommended to open the spreadsheet in read only mode unless I need to make any changes.

The problem as I see it is that the script pauses until _ExcelBookOpen() completes which it can't do as the spreadsheet can't open until the dialog box is clicked. I can't intereact with the dialog box as the sript is paused until _ExcelBookOpen() completes.

How can I click the dialog box if both parts of my script are waiting for the other to finish?

Any help gratefully received.

Share this post


Link to post
Share on other sites
enaiman

Open it in read-only mode.

If you need to make changes ... well, it will get complicated.

What's preventing you to get a "normal" file? Why can't you make your script to detect the new window and press the desired button?


SNMP_UDF ... for SNMPv1 and v2c so far, GetBulk and a new example script

wannabe "Unbeatable" Tic-Tac-Toe

Paper-Scissor-Rock ... try to beat it anyway :)

Share this post


Link to post
Share on other sites
Mongoose

If I could open it read only I would but I need to make some changes to the spreadsheet.

Share this post


Link to post
Share on other sites
enaiman

As I said:

- get a "normal" file instead of that one (either remove the read-only thing either create a new file and copy everything)

OR

- get the title of the pop-up and button handles and make your script push the button


SNMP_UDF ... for SNMPv1 and v2c so far, GetBulk and a new example script

wannabe "Unbeatable" Tic-Tac-Toe

Paper-Scissor-Rock ... try to beat it anyway :)

Share this post


Link to post
Share on other sites
PsaltyDS

It would be better if we knew how to explicitly open in RW with a parameter that prevented that dialog from occurring, but I don't know how to do that.

Since the call to $oExcel.WorkBooks.Open() is blocking, you would have to kick off a separate process to deal with that pop up dialog. One easy way to do that is for the script to Run() itself with a command line switch that causes that instance to only handle the pop up and then exit.

:mellow:

P.S. Hmm... wasn't that hard to Google a solution after all. There is a parameter for the .Open() method called IgnoreReadOnlyRecommended. You could try something like:

$oExcel = ObjCreate("Excel.Application")
$oExcel.Visible = 1
$oExcel.WorkBooks.Open($sFilePath, Default, False, Default, $sPassword, $sWritePassword, True)

That seventh parameter = True is IgnoreReadOnlyRecommended.

:(

Edited by PsaltyDS

Valuater's AutoIt 1-2-3, Class... Is now in Session!For those who want somebody to write the script for them: RentACoder"Any technology distinguishable from magic is insufficiently advanced." -- Geek's corollary to Clarke's law

Share this post


Link to post
Share on other sites
enaiman

Since the call to $oExcel.WorkBooks.Open() is blocking

Hat-off; I didn't think of that. You're right 100% - it looks like Mongoose doesn't have too much choice.

There is a parameter for the .Open() method called IgnoreReadOnlyRecommended

That's nice :mellow:

Edited by enaiman

SNMP_UDF ... for SNMPv1 and v2c so far, GetBulk and a new example script

wannabe "Unbeatable" Tic-Tac-Toe

Paper-Scissor-Rock ... try to beat it anyway :)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×