使用 Python 读取、添加和编辑 Excel 中的线索注释

MS Excel 是一款功能强大且易于使用的工具,一直被认为是数据分析的首选。在 Excel 中,我们可以通过使用线索注释来实现新的协作高度。在本文中,我们将学习如何使用 Python 以编程方式读取、添加、编辑和删除 Excel 中的线索注释。

本文涵盖以下主题:

用于处理 Excel 中的线程注释的 Python API

Aspose.Cells 是一个广泛使用的库,允许使用 API 以各种编程语言(包括 Python)操作 Microsoft Excel 文件。我们将使用 Aspose.Cells for Python via .NET 在 Excel 工作表中添加、读取、编辑或删除线索注释。它允许开发人员在其 Python 应用程序中生成、转换或修改 Excel 支持的文件格式。

pip install aspose-cells-python

使用 Python 在 Excel 中添加线索注释

我们可以按照以下步骤轻松地将线索注释添加到 Excel 工作表中:

  1. 创建 Workbook 类的实例。
  2. 使用 add(name, userid,providerid) 方法将作者添加到 threadedcommentauthors 集合中。
  3. 通过索引获取新创建的作者的 ThreadedCommentAuthor 类对象。
  4. 使用 addthreadedcomment() 方法添加线程注释。它将单元格名称、注释文本和 ThreadedCommentAuthor 对象作为参数。
  5. 使用 Workbook.save(string) 方法保存 Excel 文件。

以下代码示例演示如何使用 Python 将串联注释添加到 Excel 工作表。

# 此代码示例演示如何在 Excel 工作表中添加串联注释
# 创建 Workbook 类的实例
workbook = Workbook();

# 添加作者
authorIndex = workbook.worksheets.threaded_comment_authors.add("Aspose Test", "", "");
author = workbook.worksheets.threaded_comment_authors[authorIndex];

# 添加线索评论
workbook.worksheets[0].comments.add_threaded_comment("A1", "Test Threaded Comment", author);

# 保存输出文件
workbook.save("D:\\Files\\AddThreadedComments_out.xlsx");

阅读 Python 中特定单元格的线程注释

我们可以按照以下步骤从 Excel 工作表中读取指定单元格的线索注释:

  1. 使用 Workbook 类加载现有 Excel 文件。
  2. 通过索引访问工作表。
  3. 使用 getthreadedcomments() 方法获取特定单元格的线程注释。它将单元格名称作为参数。
  4. 循环浏览所有线索评论并阅读详细信息。

以下代码示例演示如何使用 Python 从 Excel 工作表中读取指定列的串联注释。

# 此代码示例演示如何读取 Excel 工作表中指定单元格的串联注释
# 加载现有 Excel 文件
workbook = Workbook("D:\\Files\\AddThreadedComments_out.xlsx")

# 访问第一个工作表
worksheet = workbook.worksheets[0];

# 获取特定单元格的线索评论
threadedComments = worksheet.comments.get_threaded_comments("A1");

# 阅读线索评论
for comment in threadedComments:
    print("Author Name: " + comment.author.name)
    print("Threaded comment Notes:" + comment.notes)
Author Name: Aspose Test
Threaded comment Notes:Test Threaded Comment

使用 Python 读取 Excel 中的所有线程注释

同样,我们可以按照以下步骤读取 Excel 工作表中可用的所有线索注释:

  1. 使用 Workbook 类加载现有 Excel 文件。
  2. 循环浏览所有评论并阅读每条评论的线索评论。

以下代码示例演示如何使用 Python 从 Excel 工作表中读取所有串联注释。

# 此代码示例演示如何从 Excel 工作表读取所有线程注释
# 加载现有 Excel 文件
workbook = Workbook("D:\\Files\\MultipleThreadedComments_out.xlsx")

# 访问第一个工作表
worksheet = workbook.worksheets[0];

# 获取所有评论
comments = worksheet.comments

# 阅读所有线程评论
for comment in comments:
    # 处理线索评论
   for threadedComment in comment.threaded_comments:
        print("Author Name: " + threadedComment.author.name)
        print("Threaded comment author User Id: " + threadedComment.author.user_id)
        print("Threaded comment author ProviderId:" + threadedComment.author.provider_id)
        print("Threaded comment Notes:" + threadedComment.notes)

使用 Python 在 Excel 中编辑线索注释

请按照以下步骤更新 Excel 工作表中的任何线索注释:

  1. 使用 Workbook 类加载现有 Excel 文件。
  2. 通过索引访问工作表。
  3. 使用 getthreadedcomments() 方法获取特定单元格的线程注释。它将单元格名称作为参数。
  4. 更新评论的注释属性。
  5. 使用 Workbook.save(string) 方法保存 Excel 文件。

以下代码示例演示如何使用 Python 编辑 Excel 工作表中的串联注释。

# 此代码示例演示如何在 Excel 工作表中编辑串联注释
# 加载现有 Excel 文件
workbook = Workbook("D:\\Files\\AddThreadedComments_out.xlsx")

# 访问第一个工作表
worksheet = workbook.worksheets[0];

# 获取特定单元格的线索评论
threadedComments = worksheet.comments.get_threaded_comments("A1");
comment = threadedComments[0]

# 更新评论说明
comment.notes = "Updated Comment";

# 保存输出文件
workbook.save("D:\\Files\\EditThreadedComments.xlsx");

使用 Python 删除 Excel 中的线索注释

我们还可以按照以下步骤删除 Excel 工作表中特定单元格的串联注释:

  1. 使用 Workbook 类加载现有 Excel 文件。
  2. 通过索引访问工作表。
  3. 使用removeat() 方法从评论集合中删除评论。它将单元格名称作为参数。
  4. 使用 save(string) 方法保存 Excel 文件。

以下代码示例演示如何使用 Python 删除 Excel 工作表中的串联注释。

# 此代码示例演示如何删除 Excel 工作表中的串联注释
# 加载现有 Excel 文件
workbook = Workbook("D:\\Files\\AddThreadedComments_out.xlsx")

# 获取所有评论
comments = workbook.worksheets[0].comments

# 删除评论
comments.remove_at("A1")
    
# 保存输出文件
workbook.save("D:\\Files\\DeleteThreadedComments.xlsx");

获取免费许可证

您可以使用临时许可证,在没有评估限制的情况下使用 Aspose.Cells for Python。

Excel 中的线索式注释 – 学习资源

除了在 Excel 工作表中使用串联注释之外,还可以了解有关创建、操作和转换 Excel 文件的更多信息,并使用以下资源探索该库的各种其他功能:

结论

在本文中,我们学习了如何使用 Python 从 Excel 工作表中读取、添加、编辑和删除线索注释。通过利用 Aspose.Cell for Python,您可以在 Python 应用程序中轻松操作 Excel 工作表。如有任何疑问,请通过我们的免费支持论坛与我们联系。

也可以看看