Using win32com, I have two workbooks open.
- How do you know which one is active?
- How do you change which one is active?
- How can you close one and not the other? (not Application.开发者_运维技巧Quit())
What is your larger goal here? Automate already open excel windows or simply write XLS files? If it's the latter you should use consider using xlwt.
How do you know which one is active?
xl = win32com.client.Dispatch("Excel.Application")
wbOne = xl.Workbooks.Add()
wbTwo = xl.Workbooks.Add()
xl.ActiveWorkbook == wbOne
False
xl.ActiveWorkbook == wbTwo
True
How do you change which one is active?
wbOne.Activate()
xl.ActiveWorkbook == wbOne
True
How can you close one and not the other? (not Application.Quit())
wbOne.Close()
wbTwo.Close()
精彩评论