我试图用win32com/python在Excel中获得一系列单元格的内部颜色。循环通过每个单元格不是一个选项,因为这需要3到5秒才能完成,而颜色每秒钟都在变化。在
使用Range.Value(11)似乎有帮助,但win32com不喜欢在传递任何参数时使用它范围值. 在
import win32com.client as win32
excel = win32.Dispatch('excel.application')
fileName = r"myFile.xlsm"
myBook = excel.Workbooks(fileName)
mySheet = myBook.Sheets('Sheet1')
myRange = mySheet.Range('I3:AL32')
myState = myRange.Value # is acceptable but useless
myState = myRange.Value(11) # TypeError: 'tuple' object is not callable
在Excel中执行VBA中的myRange(“I3:AL32”).Value(11)可以正常工作,但我不能创建自定义自定义自定义项并使用应用程序。运行在win32com中,或者因为已经有VBA代码在基Excel文件中运行(这是改变单元格颜色的第一个原因)。在
有没有其他方法可以将该参数传递到范围。值?在
我自己也在玩这个,我找到了一个可以用win32com工作的答案
我使用myRange.\u print_details_u()来显示可以从com对象访问的内容,得到以下结果:
所以我可以告诉你Value是一个属性,它允许你使用我的范围值在
但是还有一个GetValue和SetValue。。。在
所以不是我的范围值(11) 。。您要使用:
^{pr2}$我不确定这是你想要的结果,不幸的是它没有使用win32com.客户端但是comtypes.客户端,但如果您尝试:
您可以打印如下内容:
^{pr2}$在这里你可以找到我在例子中使用的不同颜色的代码。 希望它对你有用,即使它不是用win32com。在
相关问题 更多 >
编程相关推荐