如何在phpexcel中设置第一行,当我使用phpexcel导出文件时,我真的很新,结果始终以A1行开头!怎么跳过它..? 我想开始在A4或其他任何行中插入我的数据。 这就是我的代码(更新完整代码)
function theme_views_data_export_xlsx_body(&$vars) {
_views_data_export_header_shared_preprocess($vars);
_views_data_export_body_shared_preprocess($vars);
$complete_array = array_merge(array($vars['header']), $vars['themed_rows']);
// Decode HTML entities.
foreach ($complete_array as &$row) {
foreach ($row as &$value) {
$value = decode_entities($value);
}
}
// Load PHPExcel library.
$library = libraries_load('PHPExcel');
// Create PHPExcel spreadsheet and add rows to it.
$objPHPExcel = new PHPExcel();
$objPHPExcel->setActiveSheetIndex(0);
$objPHPExcel->getActiveSheet()->setCellValue('F1', '=E2');
$objPHPExcel->getActiveSheet()->fromArray($complete_array);
$objPHPExcel->getActiveSheet()->setTitle('Nilai Ukk');
$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(20);
// $objPHPExcel->getActiveSheet()->getStyle('A2')->getAlignment()-
>setWrapText(true);
$excel_type = 'excel2007';
switch ($excel_type) {
default:
case 'excel2007':
$objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel);
break;
}
// Catch the output of the spreadsheet.
ob_start();
$objWriter->save('php://output');
$excelOutput = ob_get_clean();
return $excelOutput;
}
感谢
答案 0 :(得分:0)
根据Mark Baker的说法,您可以执行以下操作以跳过第一个标题行:
$highestRow = $sheet->getHighestRow();
$highestColumn = $sheet->getHighestColumn();
$sheetData = $sheet->rangeToArray(
'A2:' . $highestColumn . $highestRow,
NULL,TRUE,FALSE
);
答案 1 :(得分:0)
您只需要跳过第1行。不要将整行字段设置为NULL
您需要定义变量
$row = 2; // skip first row set direct value 2
现在您可以使用该变量了
setCellValue("A{$row}", 'Your_Value');
它会在Excel工作表的Your_Value
字段中设置A2
。
您可以增加变量$row++
以将其他数据添加到下一行。