2

使用 win32com,我打开了两个工作簿。

  1. 你怎么知道哪个是活跃的?
  2. 你如何改变哪个是活跃的?
  3. 你怎么能关闭一个而不是另一个?(不是 Application.Quit())
4

1 回答 1

6

您在这里的更大目标是什么?自动化已经打开的 excel 窗口或只是编写 XLS 文件?如果是后者,您应该考虑使用xlwt

你怎么知道哪个是活跃的?

xl = win32com.client.Dispatch("Excel.Application")
wbOne = xl.Workbooks.Add()
wbTwo = xl.Workbooks.Add()
xl.ActiveWorkbook == wbOne
 False
xl.ActiveWorkbook == wbTwo 
 True

你如何改变哪个是活跃的?

wbOne.Activate()
xl.ActiveWorkbook == wbOne
 True

你怎么能关闭一个而不是另一个?(不是 Application.Quit())

wbOne.Close()
wbTwo.Close()
于 2010-06-04T16:25:28.993 回答