我有以下示例代码。我遇到的问题是,在我显示评论的部分的第一列,它被修剪。我喜欢做的是显示注释,它包含所需的多个字段。目前它被修剪。我正在使用Excel 2010.
var path = Path.Combine(driveLetter, "Sample", "Report_-Blank.xlsx");
XLWorkbook workbook = new XLWorkbook(path);
//Read worksheet at position 1 i.e. First worksheet in excel
var ws = workbook.Worksheet(1);
// Facility Tested
ws.Cell(1, 19).Value = "TestLocation";
ws.Cell(1, 19).Style.Font.FontSize = 20;
// Date of Collection
ws.Cell(2, 19).Value = "10/12/2013";
ws.Cell(2, 19).Style.Font.FontSize = 20;
// Collector's Email
ws.Cell(3, 19).Value = "james@gmail.com";
ws.Cell(3, 19).Style.Font.FontSize = 20;
// LabId
ws.Cell(5, 19).Value = "1344";
ws.Cell(5, 19).Style.Font.FontSize = 20;
// Date Analyzed
ws.Cell(6, 19).Value = "12/3/2013";
ws.Cell(6, 19).Style.Font.FontSize = 20;
// Sample #
ws.Cell(20, 1).Value = "1";
ws.Cell(20, 1).Style.Font.FontSize = 20;
ws.Cell(20, 1).Style.Border.OutsideBorder = XLBorderStyleValues.Thin;
// Location
ws.Cell(20, 2).Value = "Closed Loop1";
ws.Cell(20, 2).Style.Font.FontSize = 20;
ws.Cell(20, 2).Style.Border.OutsideBorder = XLBorderStyleValues.Thin;
// Comments
ws.Cell(22, 1).Value = "COMMENTS:";
ws.Cell(22, 1).Style.Font.FontSize = 25;
ws.Cell(22, 1).Style.Font.Bold = true;
ws.Cell(22, 1).Style.Font.Underline = XLFontUnderlineValues.Single;
// Comment 1
ws.Cell(23, 1).Value = "Sample 1: Test is a test of how to display sample 1 445454@ ";
ws.Cell(23, 1).Style.Font.FontSize = 20;
ws.Cell(23, 1).Style.Border.OutsideBorder = XLBorderStyleValues.Thin;
MemoryStream ms = new MemoryStream();
workbook.SaveAs(ms);
return ms;
答案 0 :(得分:2)
如果右侧的单元格为空,则Excel应在空单元格上显示注释单元格中的文本。如果不是这种情况,您可以合并一些单元格以获得更多空间:
ws.Range(23, 1, 23, x).Merge().Value = "Sample 1: ...";
其中x
是您要合并的单元格数。
如果没有足够的空单元格来为注释腾出空间,您还可以激活包装:
ws.Cell(23, 1).Style.Alignment.SetWrapText(true);