cell.setCellFormula
时间: 2023-12-22 15:06:43 浏览: 143
这是一个方法调用,用于在 Apache POI 中设置单元格的公式。它允许您在单元格中添加Excel公式,以便在单元格中计算值。您可以将公式设置为字符串,并将其分配给单元格,然后在工作簿中计算该公式。这个方法的语法是:
```
cell.setCellFormula(formula);
```
其中,formula是您要设置的公式字符串。注意,您需要使用Excel公式语言来编写公式。
相关问题
poi3.8 xlsx cell.setCellFormula 隐藏等于号
如果您使用 `cell.setCellFormula` 方法设置单元格公式,那么等号会自动显示在单元格中。如果您不想显示等号,可以使用 `setCellValue` 方法设置公式结果,而不是设置公式本身。例如,如果您想在单元格中显示 `SUM(A1:A10)`,则可以将其设置为 `cell.setCellValue("=SUM(A1:A10)")`。这将在单元格中显示 `SUM(A1:A10)`,而不是 `=SUM(A1:A10)`。
为什么C#的NPOI使用了以下string strs = $"ROUNDUP(S{Lastrow} + 0.1, ) - S{Lastrow} - 0.1 + S{Lastrow - 1}"; ICell cell = sheetTd.GetRow(Lastrow).GetCell(19) ?? sheetTd.GetRow(Lastrow).CreateCell(19); cell.SetCellType(CellType.Formula); cell.SetCellFormula(strs);写了生成的excel没有公式
这个问题可能是因为您的公式字符串格式不正确导致的。NPOI中使用的公式字符串应该符合Excel的公式语法,如果公式字符串格式不正确,Excel将无法识别它并将其视为普通文本。
在您提供的代码中,公式字符串的格式似乎是不完整的,ROUNDUP函数的第二个参数缺失,这可能会导致Excel无法正确解析这个公式。您可以尝试修改公式字符串,添加缺失的参数,例如:
```
string strs = $"ROUNDUP(S{Lastrow} + 0.1, 0) - S{Lastrow} - 0.1 + S{Lastrow - 1}";
```
另外,您也可以尝试在生成Excel文件后手动打开文件并尝试重新计算公式,看看公式是否被正确地解析并计算。
阅读全文