当单元格需要数字(openxlsx Num)时,有没有办法让TBS自动选择?或者是否可以使用if或何时用于ope?
答案 0 :(得分:0)
这是一个应该有效的提示和技巧。
难点在于MergeBlock的情况下,在注入数据之前处理诸如“ope = xlsxNum”的格式化参数。这是出于性能考虑。 因此,我们将两次合并数据:一个用于为格式化准备TBS字段,另一个用于使用MergeField()而不是MergeBlock()实际注入数据。
以下是作为PHP数组的数据示例:
$data = array(
array('name'=>"Nom", 'type'=>'STR', 'value'=>'Jack');
array('name'=>"Stock", 'type'=>'NUM', 'value'=>1305);
array('name'=>"Value", 'type'=>'NUM', 'value'=>1.5498888);
);
将follong片段放入单元格中:
[b2.[b1.$;block=c].value;[b1.type;if '[val]'='NUM';then 'ope=xlsxNum'; else '']]
在PHP方面:
$TBS->MergeBlock('b1', $data); // prepare TBS fields with corresponding formating
$TBS->MergeField('b2', $data); // merge TBS fields with corresponding data
合并'b1'后,模板变为:
[b2.0.value;] | [b2.0.value;ope=xlsxNum] | [b2.0.value;ope=xlsxNum]
合并'b2'后,模板变为:
Jack | 1305 | 1.5498888