2

设想

您好 Java 开发人员,

这是一个直截了当的问题。我如何能够在 Apache POI 的循环中设置 Cell 的公式?

这是支持我的问题的信息:

图1:单元格C1有公式SUM(C6:C7),可以通过简单的硬编码公式来完成myCell.setCellFormula("SUM(C6:C7)")
另一方面:

图 2:这是我想要的输出。例如,我想在 Cells 上设置一个公式C1, D1, and E1。这怎么能在一个循环中完成?

为什么我要在循环中使用它?
- 硬编码会很烦人。3 个单元格只是示例。目前我有数百个细胞在等待他们的公式。
- 未指定行数,它将基于程序创建的行数。

我做了什么?
- 谷歌搜索。
- 搜索类似的问题。
- Apache POI 的列由整数表示(一行内的单元格数)。

该公式需要 Alpha C2(C 列,第 2 行)。我试图遍历电子表格并意识到如果我继续,公式将导致SUM(26:27)(其中:2 = 列 C,和第 6 行(基数 1:rowCount + 1),我想成为SUM(C6:C7)

4

2 回答 2

5

我终于解决了这个问题。
CellReference.convertNumToColString(myColumnNumber)将返回列名

于 2013-01-28T09:02:03.927 回答
1

到目前为止,您尝试了什么(代码)?

尝试这样的事情(但是当你通过 Z 列时,你必须多加考虑:

  int col=2;
  int row=6;
  char ccol = (char) (('A'+col)&0xff);
  String formula=String.format("SUM(%c%d:%c%d)", ccol, row, ccol, row+1);
于 2013-01-28T07:38:33.347 回答