使用 EPPlus C# 在单个 excel 单元格中提供不同的样式
Give different styles in a single excel cell using EPPlus C#
我找不到以不同样式设置单个 excel 单元格样式的方法。例如,我只需要将字符串的一部分加粗,而将其余部分保留在一个单元格中。我只能访问单元格,不能访问 EPPlus 中的字符。
Excel Image
通常我对单元格进行样式设置是,
ExcelPackage package = new ExcelPackage();
ExcelWorksheet ws = package.Workbook.Worksheets.Add("SheetName");
ws.Cells[1, 1].Style.Font.Bold = true;
我找不到访问单元格中字符的方法。我看到其他一些 excel 插件也做同样的事情,但是 EPPlus 有什么办法可以做到这一点吗?任何建议都会很棒。谢谢
您必须将单元格设为 RichText 并将内容添加为 RichText:
using (ExcelPackage ep = new ExcelPackage())
{
var sheet = ep.Workbook.Worksheets.Add("Sheet1");
//Creating a RichText Cell
var cell = sheet.Cells[1,1];
cell.IsRichText = true;
//Create the content
var part1 = cell.RichText.Add("This is blue bold");
part1.Bold = true;
part1.Color = System.Drawing.Color.Blue;
var part2 = cell.RichText.Add(" And this is red and not bold");
part2.Bold = false;
part2.Color = System.Drawing.Color.Red;
ep.SaveAs(new FileInfo(myFile));
}
我找不到以不同样式设置单个 excel 单元格样式的方法。例如,我只需要将字符串的一部分加粗,而将其余部分保留在一个单元格中。我只能访问单元格,不能访问 EPPlus 中的字符。
Excel Image
通常我对单元格进行样式设置是,
ExcelPackage package = new ExcelPackage();
ExcelWorksheet ws = package.Workbook.Worksheets.Add("SheetName");
ws.Cells[1, 1].Style.Font.Bold = true;
我找不到访问单元格中字符的方法。我看到其他一些 excel 插件也做同样的事情,但是 EPPlus 有什么办法可以做到这一点吗?任何建议都会很棒。谢谢
您必须将单元格设为 RichText 并将内容添加为 RichText:
using (ExcelPackage ep = new ExcelPackage())
{
var sheet = ep.Workbook.Worksheets.Add("Sheet1");
//Creating a RichText Cell
var cell = sheet.Cells[1,1];
cell.IsRichText = true;
//Create the content
var part1 = cell.RichText.Add("This is blue bold");
part1.Bold = true;
part1.Color = System.Drawing.Color.Blue;
var part2 = cell.RichText.Add(" And this is red and not bold");
part2.Bold = false;
part2.Color = System.Drawing.Color.Red;
ep.SaveAs(new FileInfo(myFile));
}