如何使用python win32com更改Excel单元格中单个字符的颜色?
我有一个关于 Excel 的 win32com 绑定的问题。我设置了早期绑定并遵循 O'Reilly 的“Win32 上的 Python 编程”一书中的一些示例。
以下代码工作正常:
book2.xlApp.Worksheets('Sheet1').Cells(1,1).Font.ColorIndex = 1
book2.xlApp.Worksheets('Sheet1').Cells(1,1).Font.ColorIndex = 2
它根据数字更改整个单元格的字体颜色。 但是这不起作用:
book2.xlApp.Worksheets('Sheet1').Cells(1,1).Characters(start,length).Font.ColorIndex = 1
我得到以下回调:
Traceback (most recent call last):
File "<interactive input>", line 1, in <module>
AttributeError: Characters instance has no __call__ method
但是在 Excels VBA 中代码可以工作。有人能指出我的解决方案吗? 我确实需要更改 Excel 单元格中字符串的部分内容。
非常感谢。
I have a question regarding the win32com bindings for excel. I set up early bindings and followed some examples from the "Python Programming on Win32" book from O'Reilly.
The following code works fine:
book2.xlApp.Worksheets('Sheet1').Cells(1,1).Font.ColorIndex = 1
book2.xlApp.Worksheets('Sheet1').Cells(1,1).Font.ColorIndex = 2
It changes the font color of the whole cell according to the number.
However this does not work:
book2.xlApp.Worksheets('Sheet1').Cells(1,1).Characters(start,length).Font.ColorIndex = 1
I get the following callback:
Traceback (most recent call last):
File "<interactive input>", line 1, in <module>
AttributeError: Characters instance has no __call__ method
However in Excels VBA the code works. Can anybody point me to the solution?
I really need to change parts of a string in an excel cell.
Thank you very much.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
使用获取字符:
use GetCharacters: