php PHPExcel 颜色到特定行
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/27981676/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
PHPExcel color to specific row
提问by Mark Baker
I am currently working with PHPExcel and I am trying to give 1 specific row a color, I have read Set Background cell color in PHPExcelalready and I have try all of those options. Without luck!
我目前正在使用 PHPExcel,我正在尝试为 1 个特定行指定颜色,我已经阅读了 PHPExcel 中的设置背景单元格颜色,并且尝试了所有这些选项。没有运气!
Maybe I do something wrong, but here it goes:
也许我做错了什么,但它是这样的:
//Table
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue('B2', 'Beller ')
->setCellValue('D2', 'Beller nummer')
->setCellValue('F2', 'Datum')
->setCellValue('H2', 'ontvanger naam')
->setCellValue('J2', 'ontvanger nummer')
->setCellValue('L2', 'Billing seconds')
->setCellValue('N2', 'Direction')
// array
->setCellValue('B3', 'hi')
->setCellValue('D3', 'hi')
->setCellValue('F3', 'hi')
->setCellValue('H3', 'hi')
->setCellValue('J3', 'ontvanger nummer')
->setCellValue('L3', 'Billing seconds')
->setCellValue('N3', 'Direction');
//Werkt niet }
// breedte + kopstukken dikgedrukt
$objPHPExcel->getActiveSheet()->getStyle('B2')->getFont()->setBold(true);
$objPHPExcel->getActiveSheet()->getStyle('D2')->getFont()->setBold(true);
$objPHPExcel->getActiveSheet()->getStyle('F2')->getFont()->setBold(true);
$objPHPExcel->getActiveSheet()->getStyle('H2')->getFont()->setBold(true);
$objPHPExcel->getActiveSheet()->getStyle('J2')->getFont()->setBold(true);
$objPHPExcel->getActiveSheet()->getStyle('L2')->getFont()->setBold(true);
$objPHPExcel->getActiveSheet()->getStyle('N2')->getFont()->setBold(true);
$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(15);
$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(15);
$objPHPExcel->getActiveSheet()->getColumnDimension('F')->setWidth(15);
$objPHPExcel->getActiveSheet()->getColumnDimension('H')->setWidth(15);
$objPHPExcel->getActiveSheet()->getColumnDimension('J')->setWidth(20);
$objPHPExcel->getActiveSheet()->getColumnDimension('L')->setWidth(15);
$objPHPExcel->getActiveSheet()->getColumnDimension('N')->setWidth(15);
$objPHPExcel->getActiveSheet()->getStyle('N2')->applyFromArray(
array(
'fill' => array(
'type' => PHPExcel_Style_Fill::FILL_SOLID,
'color' => array('rgb' => 'E05CC2')
)
)
);
it gives me N2 colored, but I want all the rows in N filled with text, be colored;)
它给了我 N2 颜色,但我希望 N 中的所有行都填充文本,并着色;)
回答by Mark Baker
You cannot style a row in PHPExcel, only a cell or a range of cells
您不能在 PHPExcel 中为一行设置样式,只能为一个单元格或一系列单元格设置样式
$objPHPExcel->getActiveSheet()
->getStyle('A1:E1')
->getFill()
->setFillType(PHPExcel_Style_Fill::FILL_SOLID)
->getStartColor()
->setARGB('FF808080');
or
或者
$objPHPExcel->getActiveSheet()
->getStyle('A1:E1')
->applyFromArray(
array(
'fill' => array(
'type' => PHPExcel_Style_Fill::FILL_SOLID,
'color' => array('rgb' => 'E05CC2')
)
)
);
Will set the background fill style for cells A1 to E1
将设置单元格 A1 到 E1 的背景填充样式