2

PHPExcel を使用して Excel 5 ファイルを作成すると、背景色のセルを任意の色で表示できますが、Excel 2007 に切り替えるとすぐに背景色が常に黒のままになります。列ヘッダーを黄色で表示することを目標とするコードのサブセットを次に示します。事前に感謝します。

$styleArrayTableHeader = array(
                         'fill' => array(
                         'type' => PHPExcel_Style_Fill::FILL_SOLID,
                         'rotation' => 90,

                         'startcolor' => array(
                         'argb' => '#ffff00',    // yellow 
                          ),

                         'endcolor' => array(
                         'argb' => '#ffff00',
                         ),),);

$objPHPExcel->setActiveSheetIndex(0);
$worksheet = $objPHPExcel->getActiveSheet();
$worksheet->getStyle('B6:K6')->applyFromArray($styleArrayTableHeader);
.....
.....
4

2 に答える 2

1

セルの塗りつぶしタイプを確認する必要があります

if ( $pStyle->getFill()->getFillType() == PHPExcel_Style_Fill::FILL_NONE ) {
    $color = 'white'
} else {
    $color = '#' . $pStyle->getStartColor()->getRGB()
}
于 2014-05-19T20:15:05.130 に答える
0

githubの最新の開発ブランチコードで再試行できますか?Excel2007の塗りつぶしスタイルには少なくとも1つの修正があります...

また、rgb値を使用してargbを設定しようとしています。argb値を使用するか、代わりにrgbを設定してください

于 2012-10-07T06:33:08.677 に答える