C#在Excel表格中插入、编辑和删除批注

所属分类: 软件编程 / C#教程 阅读数: 135
收藏 0 赞 0 分享

概述

为文档添加必要的批注可以给文档使用者提供重要的提示信息,下面的示例中,将介绍通过C#编程语言来给Excel表格中的指定单元格内容添加批注,此外,对于已有的批注,如果需要修改,我们也可以进行编辑或者删除批注。示例内容将包含以下主要内容:

1.插入批注

  1.1 插入文本

  1.2 插入图片

2.编辑批注

 2.1 修改批注内容

 2.1 设置批注可见性

3.删除批注

工具

 Spire.XLS for .NET 8.0 

提示:在进行代码操作之前,需下载安装Spire.Xls,并添加引用dll文件,添加如下using指令

using System;

using Spire.Xls;

using System.Drawing;

代码示例(供参考)

1.插入Excel批注

【C#】

步骤1:实例化一个Workbook类实例并加载Excel文档

Workbook workbook = new Workbook();
workbook.LoadFromFile("test.xlsx");

步骤2:获取第一个工作表

Worksheet sheet = workbook.Worksheets[0];

步骤3:插入文本批注

string comment = "注意:\n 责任人兼设备维护人";//设置批注文本
ExcelFont font = workbook.CreateFont();//设置批注字体格式
font.FontName = "Calibri";
font.Color = Color.Black;
font.IsBold = true;
CellRange range = sheet.Range["I3"];//添加批注到指定单元格
range.Comment.RichText.Text = comment;
range.Comment.Width = 200;
range.Comment.Height = 50;
range.Comment.RichText.SetFont(10, 10, font);

步骤4:插入图片批注

//加载图片,将图片插入到指定单元格的批注
Image image = Image.FromFile("logo.png");
sheet.Range["B2"].Comment.Fill.CustomPicture(image, "logo.png");
sheet.Range["B2"].Comment.Height = image.Height;
sheet.Range["B2"].Comment.Width = image.Width;

步骤5:保存文档

workbook.SaveToFile("AddComment.xlsx", ExcelVersion.Version2013);
System.Diagnostics.Process.Start("AddComment.xlsx");

批注插入效果(如下图):

全部代码:

using System;
using Spire.Xls;
using System.Drawing;

namespace ModifyComment_XLS
{
 class Program
 {
  static void Main(string[] args)
  {
   //实例化一个Workbook类实例并加载Excel文档
   Workbook workbook = new Workbook();
   workbook.LoadFromFile("test.xlsx");

   //获取第一个工作表
   Worksheet sheet = workbook.Worksheets[0];

   //设置批注文本
   string comment = "注意:\n 责任人兼设备维护人";

   //设置批注字体
   ExcelFont font = workbook.CreateFont();
   font.FontName = "Calibri";
   font.Color = Color.Black;
   font.IsBold = true;

   //添加批注到指定单元格
   CellRange range = sheet.Range["I3"];
   range.Comment.RichText.Text = comment;
   range.Comment.Width = 200;
   range.Comment.Height = 50;
   range.Comment.RichText.SetFont(10, 10, font);

   //加载图片,将图片插入到指定单元格的批注
   Image image = Image.FromFile("logo.png");
   sheet.Range["B2"].Comment.Fill.CustomPicture(image, "logo.png");
   sheet.Range["B2"].Comment.Height = image.Height;
   sheet.Range["B2"].Comment.Width = image.Width;

   //保存并打开文档
   workbook.SaveToFile("AddComment.xlsx", ExcelVersion.Version2013);
   System.Diagnostics.Process.Start("AddComment.xlsx");
  }
 }
}

2. 修改、隐藏Excel批注

【C#】

步骤1:创建一个Workbook类对象,并加载Excel文档

Workbook workbook = new Workbook();
workbook.LoadFromFile("AddComment.xlsx");

步骤2:获取第一个工作表

Worksheet sheet = workbook.Worksheets[0];

步骤3:修改工作表中的第一个批注        

ExcelComment comment0 = workbook.Worksheets[0].Comments[0];
sheet.Comments[0].Text = "This is a new comment";

步骤4:设置批注可见性(隐藏、显示)

//设置指定批注不可见(隐藏)
sheet.Comments[0].IsVisible = true;
//设置指定批注可见(显示)
sheet.Comments[1].IsVisible = false;

步骤5:保存文档

workbook.SaveToFile("ModifyComment.xlsx", ExcelVersion.Version2013);
System.Diagnostics.Process.Start("ModifyComment.xlsx");

效果图:

全部代码:

using System;
using Spire.Xls;
using System.Drawing;

namespace ModifyComment_XLS
{
 class Program
 {
  static void Main(string[] args)
  {
   //创建一个Workbook类对象,并加载Excel文档
   Workbook workbook = new Workbook();
   workbook.LoadFromFile("AddComment.xlsx");

   //获取第一个工作表
   Worksheet sheet = workbook.Worksheets[0];

   //修改工作表中的第一个批注   
   ExcelComment comment0 = workbook.Worksheets[0].Comments[0];
   sheet.Comments[0].Text = "This is a new comment";

   //设置指定批注不可见(隐藏)
   sheet.Comments[0].IsVisible = true;
   //设置指定批注可见(显示)
   sheet.Comments[1].IsVisible = false;

   //保存并打开文档
   workbook.SaveToFile("ModifyComment.xlsx", ExcelVersion.Version2013);
   System.Diagnostics.Process.Start("ModifyComment.xlsx");
  }
 }
}

3.删除Excel批注

【C#】

//实例化Wordbook类实例并加载Excel文档
Workbook workbook = new Workbook();
workbook.LoadFromFile("Comments.xlsx");

//获取第一个工作表
Worksheet sheet = workbook.Worksheets[0];

//删除工作表中的第2个批注
sheet.Comments[1].Remove();

//保存并打开文档
workbook.SaveToFile("RemoveComment.xlsx", ExcelVersion.Version2013);
System.Diagnostics.Process.Start("RemoveComment.xlsx");

以上全部为本篇文章的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

更多精彩内容其他人还在看

c#开发word批量转pdf源码分享

已经安装有Office环境,借助一些简单的代码即可实现批量Word转PDF,看下面的实例源码吧
收藏 0 赞 0 分享

c# xml API操作的小例子

这篇文章主要介绍了c# xml API操作的小例子,有需要的朋友可以参考一下
收藏 0 赞 0 分享

c#唯一值渲染实例代码

这篇文章主要介绍了c#唯一值渲染实例代码,有需要的朋友可以参考一下
收藏 0 赞 0 分享

淘宝IP地址库采集器c#代码

这篇文章主要介绍了淘宝IP地址库采集器c#代码,有需要的朋友可以参考一下
收藏 0 赞 0 分享

C#在后台运行操作(BackgroundWorker用法)示例分享

BackgroundWorker类允许在单独的专用线程上运行操作。如果需要能进行响应的用户界面,而且面临与这类操作相关的长时间延迟,则可以使用BackgroundWorker类方便地解决问题,下面看示例
收藏 0 赞 0 分享

c#文本加密程序代码示例

这是一个加密软件,但只限于文本加密,加了窗口控件的滑动效果,详细看下面的代码
收藏 0 赞 0 分享

c#生成站点地图(SiteMapPath)文件示例程序

这篇文章主要介绍了c#生成站点地图(SiteMapPath)文件的示例,大家参考使用
收藏 0 赞 0 分享

C# 键盘Enter键取代Tab键实现代码

这篇文章主要介绍了C# 键盘Enter键取代Tab键实现代码,有需要的朋友可以参考一下
收藏 0 赞 0 分享

C# WinForm导出Excel方法介绍

在.NET应用中,导出Excel是很常见的需求,导出Excel报表大致有以下三种方式:Office PIA,文件流和NPOI开源库,本文只介绍前两种方式
收藏 0 赞 0 分享

C#串口通信程序实例详解

在.NET平台下创建C#串口通信程序,.NET 2.0提供了串口通信的功能,其命名空间是System.IO.Ports,创建C#串口通信程序的具体实现是如何的呢?让我们开始吧
收藏 0 赞 0 分享
查看更多