Tstudent Posted March 17, 2012 Share Posted March 17, 2012 What i would like to do is: 1) Open an excel file // no problem, this is very simple 2) wait for excel file completely load // i can use sleep function and use a very long time to be sure 3) run an excel macro called "mymacro1" // i don't know how to do this Can you give me the correct sintax for point three? thank you Link to comment Share on other sites More sharing options...
JoHanatCent Posted March 17, 2012 Share Posted March 17, 2012 If you use the following you do not have to build a sleep in: #include <Excel.au3> and to open use $oExcel = _ExcelBookOpen($file, 1) $oExcel.run("mymacro1");<<<< == Your Macro to run AnonymousX 1 Link to comment Share on other sites More sharing options...
Tstudent Posted March 17, 2012 Author Share Posted March 17, 2012 Thank you very much. I have another question, don't know if it is possible. Before run excel file i want (with _ExcelBookOpen($file, 1)) i want to check if, accidentally, there are other excel files already open. In that case i want close all of them (saving before exit). Is possible to do this check and close all other excel files eventually opened? Thanks Link to comment Share on other sites More sharing options...
Tstudent Posted March 17, 2012 Author Share Posted March 17, 2012 Found the solution. Paste here for other interested users of this beautiful forum: $oExcel = ObjGet("", "Excel.Application") For $element In $oExcel.Application.Workbooks If $element.FullName <> "" Then MsgBox(0,"",$element.FullName) $element.Save $element.Close Else $element.Activate $oExcel.Application.Dialogs(5).Show EndIf Next $oExcel.Application.Quit Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now