2017-05-26 126 views
0

如何在phpexcel中設置第一行,當我使用phpexcel導出文件時,我真的對這個東西是新的,結果總是以A1行開始!如何跳過它..? 我想開始插入我的數據在其他行像A4或任何其他行。 這是我在我的代碼(更新完整的代碼)如何在phpexcel中設置第一行

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

您是否嘗試過設置' - > setCellValue('A4','您的數據')等? – JustBaron

+0

是的,但沒有運氣..! –

回答

0

據馬克·貝克,你可以做以下跳過第一個標題行:

$highestRow = $sheet->getHighestRow(); 
$highestColumn = $sheet->getHighestColumn(); 

$sheetData = $sheet->rangeToArray(
    'A2:' . $highestColumn . $highestRow, 
    NULL,TRUE,FALSE 
); 

見本:PHPExcel toArray skip first header row

+0

謝謝,但我想這不是我想要的只是檢查我的完整代碼上面我真的很感謝幫助我.. :) –

0

您只需要跳過第1行。不要將整行字段設置爲NULL

您需要定義一個變量

$row = 2; // skip first row set direct value 2 

現在你可以使用這個變量在 setCellValue("A{$row}", 'Your_Value'); 它將設置Your_Value在Excel工作表中的A2領域。

您可以遞增變量$row++以將其他數據添加到下一行。

+0

我已經更新我的完整代碼,也許你可以幫助我有代碼來設置我的第一行..謝謝 –

+0

寫下這行: - '$ objPHPExcel-> getActiveSheet() - > setCellValue('F {$ row}','= E2');' –

+0

我得到這個錯誤..'PHPExcel_Exception:單元格座標一定不能絕對。在PHPExcel_Worksheet-> getCell()'中,當我使用你的代碼 –