PHP Excelを使用して、テンプレート Excel ファイルを使用して Excel を作成しています。問題は、データグリッドがあり、テンプレートのヘッダーと最初の行のスタイルを設定したことです。これがどのように見えるか:
左上端の座標は C49 です。
100 行ある場合、最初の行のスタイルをコピーして 100 回貼り付ける必要があります。これが私のコードです
$cstart = 2;
$rstart = 49;
$count = 1;
$input = $worksheet->getStyle(num2char($cstart) . $rstart);
foreach ($b_data['rawData'] as $value) {
$worksheet->setCellValueByColumnAndRow($cstart, $rstart, $count++)
->setCellValueByColumnAndRow($cstart + 1, $rstart, $value['key'])
->setCellValueByColumnAndRow($cstart + 5, $rstart, $value['value']);
$interval = num2char($cstart) . $rstart . ':' . num2char($cstart+5) . $rstart;
$worksheet->duplicateStyle($input, $interval);
$rstart++;
}
function num2char($num) {
$numeric = $num % 26;
$letter = chr(65 + $numeric);
$num2 = intval($num / 26);
if ($num2 > 0) {
return num2char($num2 - 1) . $letter;
} else {
return $letter;
}
}
ただし、次のことがありました。
しかし、私が期待したのは:
それはバグですか、それとも何か間違っていますか?