python 使用xlwings操作excel。在 ‘活动的excel实例’xlwings.apps.active 有些问题。 代码如下

import xlwings as xw

app = xw.apps.add() //创建一个app实例



print(xw.apps) // 输出结果 Apps([])



print(xw.apps.active) // 输出结果 []




print(xw.books.active) //这行代码直接报错: 'Nonetype' object没有books属性。




为什么两个结果都显示没有活动的excel实例。
查了一些资料。
直接复制网上的代码,结果也是这样。 我看了一下xlwings版本是最新的

你这么直接用xw.apps并没有打开Excel,所以实例里面其实是什么都没有的.所以active结果是None,并且xw.books实际调用的是apps.active.books.impl,你本来这里的apps.active就是None,肯定是要报错的啊.
你给的这几行代码根本就没有打开EXCEL创建可用的实例. 这里是我找的xlwings的quickstart,你可以学习一下 https://docs.xlwings.org/en/stable/quickstart.html

直接用楼主的代码运行正常

import xlwings as xw

app = xw.apps.add()
print(xw.apps) 
print(xw.apps.active)
print(xw.books.active)

输出:
Apps([<Excel App 4652>])
<Excel App 4652>
<Book [工作簿1]>

但楼主在第一步 app = xw.apps.add() 输出的是 Apps([]),没有进程创建成功,不知道是不是office程序的问题。

我用wps打开的表格,跟你一样的结果,是不是必须用office打开啊

我用wps打开的表格,跟你一样的结果,是不是必须用office打开啊