首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用pywin32 (XLWINGS)如何读取现有评论的文本?

使用pywin32 (XLWINGS)如何读取现有评论的文本?
EN

Stack Overflow用户
提问于 2017-08-18 10:44:35
回答 2查看 1.4K关注 0票数 1

我可以在Excel表中设置和删除注释,但无法获取(读取)现有注释的内容。xlwings没有用于该对象的方法,因此需要放到com对象中。

代码语言:javascript
运行
复制
import xlwings as xw
wb = xw.Workbook.active()
xw.Range('A1').api.AddComment('Some Text')
xw.Range('A1').api.DeleteComment()
xw.Range('A1').api.AddComment('More Text')
# Sadness on my best effort so far
comment_text = xw.Range('A1').api.Comment.Shape.TextFrame.Characters.Text
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-03-15 21:22:00

OP中的代码和建议的答案都适用于我。以下是我是如何在xlwings版本0.11.5 ( windows如果这一点重要的话,Excel 2013,2016,2019)中这样做的:

向单元格添加注释(请注意,如果已经存在注释,则必须清除注释!):

代码语言:javascript
运行
复制
import xlwings as xw

path_to_excel_file = r'c:\temp\test.xlsx'
wb = xw.Book(path_to_excel_file)
sheet = wb.sheet['Sheet1']
coordinate = (1,1)
comment = "test comment"
sheet.range(coordinate).api.ClearComments()
sheet.range(coordinate).api.AddComment(comment)

阅读评论的价值:

代码语言:javascript
运行
复制
import xlwings as xw

path_to_excel_file = r'c:\temp\test.xlsx'
wb = xw.Book(path_to_excel_file)
sheet = wb.sheet['Sheet1']
coordinate = (1,1)

xlsx_comment = sheet.range(coordinate).api.comment
if xlsx_comment is not None:
    print(xlsx_comment.text())
else:
    print("No comment in this cell.")

我总是要在谷歌上搜索如何做到这一点,我遇到了这条线索,所以我觉得应该在某个地方记录这件事。狩猎愉快!

票数 1
EN

Stack Overflow用户

发布于 2017-08-28 11:14:50

问题:如何阅读现有评论的文本? 我的问题是阅读评论而不是写

不要打扰自己在链接标题如何使用python编写excel注释?,答案也显示了阅读。使用的示例令人困惑,因为它将传递的注释显示为返回的字符串:

代码语言:javascript
运行
复制
>>> sheet.Range("A1").Comment.Text("Hello World")
u'Hello World'

Comment.Text法 returnValue =instance.Text(文本、开始、覆盖) 参数 Text类型: System.Object 可选的对象。要添加的文本。 Start类型: System.Object 可选的对象。要放置添加文本的字符号。如果省略此参数,则删除注释中的任何现有文本。 Overwrite类型: System.Object 可选的对象。若要覆盖现有文本,则为True。默认值为False (插入文本)。 返回值 类型:System.String

作为all Parameter 可选的Text()返回注释文本。

代码语言:javascript
运行
复制
>>> sheet.Range("A1").Comment.Text()
u'Hello World'
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45754774

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档