【发布时间】:2016-01-06 15:44:27
【问题描述】:
我有一个 php 代码,可以编写一个列数可变的 excel 文件。每 4 行,5 号我想把上面四行的总和,每列。
我的问题是如何根据列编写公式。 我的代码是这个:
$col_index=20;
$i=20;
for($anno = $annoMin; $anno<=$annoMax; $anno++){
for($mese = 1; $mese <= 12; $mese++){
$string = "=$i$v+$i$q-$i$z-$i$t";
$ews->setCellValueByColumnAndRow($col_index,$k,$string);
$col_index=$col_index+1;
$i=$i+1;
}
}
在$string 中,我需要放置列字母而不是$i。 $v,$q,$z and $t 是对行的引用,可以。换句话说,$string 应该被评估为:
$string = "=U5+U3-U2-U4";
在第一个 for 循环中,
$string = "=V5+V3-V2-V4";
在第二个等等。 我知道我可以构建一个列字母数组并使用该 $i 引用来实现我的目标,但我确信有更好的方法。我正在使用 php 5.5 顺便说一句
另一种选择是使用 R1C1 表示法编写公式,但我很确定我不能同时在 Excel 工作表中使用标准和 R1C1 表示法
【问题讨论】:
-
ord('U') = 85和chr(85) = 'U'所以也许增加一些东西并使用chr()。 -
@AbraCadaver 你能详细说明你的概念吗?我不确定我明白你的想法