weixin_33538392
weixin_33538392
采纳率33.3%
2018-08-06 02:54

C# 如何利用NPOI读取Excel中单元格的批注?

5
已采纳

C# 如何利用NPOI读取Excel中单元格的批注?在网上只能找到创建批注的方法

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

4条回答

  • Miaonly Dadamia 3年前

    NPOI不太清楚,用的Spire.XLS来读取的,
    1.读取指定sheet中的所有批注:

     Workbook workbook = new Workbook();//实例化Workbook类对象
    workbook.LoadFromFile("test.xlsx");//加载文件
    Worksheet sheet = workbook.Worksheets[0];//获取指定工作表
    
    StringBuilder sb = new StringBuilder();//初始化StringBuilder类
    
    foreach (IComment comment in sheet.Comments)//遍历工作表中的批注,读取批注文本
    {
        string s = comment.Text;
        sb.AppendLine(s);
    }
    //将读取到的文本写入txt文档
    File.WriteAllText("Comments.txt", sb.ToString());
    System.Diagnostics.Process.Start("Comments.txt");
    
    
    1. 读取指定批注中的文本
     Workbook workbook = new Workbook();//实例化Workbook类对象
    workbook.LoadFromFile("test.xlsx");//加载文件
    Worksheet sheet = workbook.Worksheets[0];//获取指定工作表
    string s = sheet.Range["I3"].Comment.Text;//获取指定单元格中的文本批注
    File.WriteAllText("Comments1.txt", s.ToString());//写入txt文档
    System.Diagnostics.Process.Start("Comments1.txt");
    
    
    1. 读取批注中的图片
      Workbook workbook = new Workbook();//实例化Workbook类对象
     workbook.LoadFromFile("test.xlsx");//加载文件
     Worksheet sheet = workbook.Worksheets[0];//获取指定工作表
    Image image = sheet.Range["B2"].Comment.Fill.Picture;//获取指定单元格中的批注图片
    image.Save("Image.png", ImageFormat.Png);//保存图片
    System.Diagnostics.Process.Start("Image.png");
    
    
    点赞 评论 复制链接分享
  • weixin_33538392 weixin_33538392 3年前

    var comment = sheet.GetRow(0).GetCell(0).CellComment.String; 得到 IRichTextString

    点赞 评论 复制链接分享
  • anderson_hn anderson_hn 3年前

    var rm = ws.Range(start_row_index, start_column_index, end_row_index, end_column_index);rm.Cell(1,1).Comment

    点赞 评论 复制链接分享
  • wang_maosen wang_maosen 9月前

    LoadFromFile 引用什么;总是提醒无定义

    点赞 评论 复制链接分享

相关推荐