概述

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

1.插入批注

1.1 插入文本

1.2 插入图片

2.编辑批注

2.1 修改批注内容

2.1 设置批注可见性

3.删除批注

工具

 

提示:在进行代码操作之前,需下载安装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[];

步骤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 = ;
range.Comment.Height = ;
range.Comment.RichText.SetFont(, , 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[]; //设置批注文本
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 = ;
range.Comment.Height = ;
range.Comment.RichText.SetFont(, , 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[];

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

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

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

//设置指定批注可见(显示)
sheet.Comments[].IsVisible = true;
//设置指定批注不可见(隐藏)
sheet.Comments[].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[]; //修改工作表中的第一个批注
ExcelComment comment0 = workbook.Worksheets[].Comments[];
sheet.Comments[].Text = "This is a new comment"; //设置指定批注不可见(隐藏)
sheet.Comments[].IsVisible = true;
//设置指定批注可见(显示)
sheet.Comments[].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[]; //删除工作表中的第2个批注
sheet.Comments[].Remove(); //保存并打开文档
workbook.SaveToFile("RemoveComment.xlsx", ExcelVersion.Version2013);
System.Diagnostics.Process.Start("RemoveComment.xlsx");

以上全部为本篇文章的全部内容。

如需转载请注明出处。

<本文完>

C# 如何在Excel表格中插入、编辑和删除批注的更多相关文章

  1. NX二次开发-OLE/COM向EXCEL表格中插入图片

    今晚有一个兄弟问我怎么往EXCEL里插入图片(加工程序单中需要插入图片),这个我之前也没弄过,回复了他一句不知道,后来刚刚干完游戏吃完鸡,就去VC++的书上翻了翻,还真的被我翻到了.VC++的方法往E ...

  2. C#应用NPOI实现导出EXcel表格中插入饼状图(可实现动态数据生成)

    一.思路:   1.excel是可以通过NPOI插入图片的: 2.C#通过NPOI生成饼状图: 3.把生成的饼状图以字节流的形式插入到表格 二.看代码: #region 生成饼图图例 /// < ...

  3. excel表格中如何将内容粘贴到筛选后的可见单元格[转]

    默认情况下,筛选后excel表格进行复制粘贴,会贴到隐藏的表格. 可以添加两个辅助列来完成操作:1.在筛选前在表格右边添加"辅助1"列,在第二行输入1,按Ctrl+鼠标左键往下拉到 ...

  4. 根据excel表格中的内容更新Sql数据库

    关于[无法创建链接服务器 "(null)" 的 OLE DB 访问接口 SQL Server 2008读取EXCEL数据时,可能会报这个错误:无法创建链接服务器 "(nu ...

  5. 不用MathType, 如何在Mac Word中插入公式

    不用MathType, 如何在Mac Word中插入公式 找了好久都找不到MathType的破解版,不得不使用免费清爽的MarkDown编辑工具Typora_for_Mac. 我是很喜欢Typora的 ...

  6. 如何用Apache POI操作Excel文件-----如何在已有的Excel文件中插入一行新的数据?

    在POI的第一节入门中,我们提供了两个简单的例子,一个是如何用Apache POI新建一个工作薄,另外一个例子是,如果用Apache POI新建一个工作表.那么在这个章节里面,我将会给大家演示一下,如 ...

  7. 如何在Word表格中的某一栏添加背景颜色

     如何在Word表格中的某一栏添加背景颜色 编写人:CC阿爸 2014-3-14 用鼠标选中某一个单元格然后右键单击 下拉菜单选择.<边框和低纹>然后点<低纹>选项卡 选中色卡 ...

  8. VBA取得EXCEL表格中的行数和列数

    VBA取得EXCEL表格中的行数和列数 初学EXCEL宏的童鞋,总是很想知道表格中含有数据的行数和列数,尤其是行数和列数不确定的情况下.这样可以避免很多的错误,并且可以提高效率.但每次用到的时候到网上 ...

  9. C#读取Excel表格中数据并返回datatable

    在软件开发的过程中,经常用到从excel表格中读取数据作为数据源,以下整理了一个有效的读取excel表格的方法. DataTable GetDataTable(string tableName,str ...

随机推荐

  1. [LeetCode] Maximize Distance to Closest Person 离最近的人的最大距离

    In a row of seats, 1 represents a person sitting in that seat, and 0 represents that the seat is emp ...

  2. 二、油泼面(Oil spill noodle)

    油泼面 油泼面是陕西传统的特色面食之一,起源于周代,并以咸阳油泼面最为著名,有鲜香味.酸辣味.香辣味. 油泼面是一种很普通的面食制作方法,将手工制作的面条在开水中煮熟后捞在碗里,将葱花碎.花椒粉.盐等 ...

  3. javascript基础(Array)

    1,join() Array.join(),不改变原数组,将数组中所有元素转换为字符串并连接在一起,返回最后生成的字符串 let a=[1,2,3]; a.join(); // =>" ...

  4. mybatis的配置和使用

    mybatis的配置和使用 MyBatis 是支持定制化 SQL.存储过程以及高级映射的优秀的持久层框架.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.MyBatis ...

  5. c++ 获取磁盘句柄

    磁盘的句柄可以用CreateFile函数获得.获得句柄后,就可以配合其他函数对磁盘进行一些操作. int main() { HANDLE hFile = INVALID_HANDLE_VALUE; h ...

  6. Java软件工程师面试常见问题集锦之一

    1.面向对象的特征有哪些方面 1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节.抽象 ...

  7. [Swift]LeetCode305. 岛屿的个数 II $ Number of Islands II

    A 2d grid map of m rows and n columns is initially filled with water. We may perform an addLand oper ...

  8. [Swift]LeetCode593. 有效的正方形 | Valid Square

    Given the coordinates of four points in 2D space, return whether the four points could construct a s ...

  9. RxJS简介

    函数式编程 1.声明式(Declarativ) 和声明式相对应的编程⽅式叫做命令式编程(ImperativeProgramming),命令式编程也是最常见的⼀种编程⽅式. //命令式编程: funct ...

  10. 面试题:反转字符串(leetcode344)

    编写一个函数,其作用是将输入的字符串反转过来.输入字符串以字符数组 char[] 的形式给出. 不要给另外的数组分配额外的空间,你必须原地修改输入数组.使用 O(1) 的额外空间解决这一问题. 你可以 ...