7
for ($char = 'A'; $char <= 'Z'; $char++) {
  $objPHPExcel->getActiveSheet()->setCellValue($char.'5','40');
}
for ($i=1;$i<=100;$i++){
    $objPHPExcel->getActiveSheet()->setCellValue('A'.$i,generateRandomString());
}
$objPHPExcel->getActiveSheet()->freezePane('B');
// Write the PHPExcel object to browser as HTML
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'HTML');
$objWriter->save('php://output');

$objPHPExcel->getActiveSheet()->freezePane('B');

“A”(第一列)列没有发生冻结。

附上屏幕截图仅供参考。在此处显示第一列(A Col)详细信息 “A”(第一列)列没有发生冻结。当我滚动 COL A 不冻结时,col A 也隐藏了。 当我滚动 COL A 不冻结时,col A 也隐藏了。

4

2 回答 2

18

freezePane() 坐标应该是工作表非冻结部分左上角单元格的单元格引用,所以

$objPHPExcel->getActiveSheet()->freezePane('B2');

告诉 Excel 冻结第 2 行上方的行,以及“B”列左侧...即第 1 行和“A”列将被冻结。

于 2013-06-14T11:30:14.260 回答
2

试试这个:

$ColumnCount=0;
$RowIndex=8;
$objPHPExcel->getActiveSheet()->freezePaneByColumnAndRow($ColumnCount, $RowIndex);
于 2015-06-18T08:08:35.203 回答