2017-05-26 10 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'、 'Your Data')'などを設定しようとしましたか? – 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

に設定しないでください。

あなたは今、あなたはそれがExcelシートのA2フィールドにYour_Valueを設定します setCellValue("A{$row}", 'Your_Value'); でその変数を使用することができ、可変

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

を定義する必要があります。

変数$row++をインクリメントして、次の行に追加データを追加できます。

+0

多分あなたは私の最初の行を設定するコードを持っているwhreを助けることができる' –

+0

絶対の。あなたのコードを使用するとPHPExcel_Worksheet-> getCell()で –

+0

私はこのエラーを得た.. 'PHPExcel_Exception; - ' $ objPHPExcel-> GetActiveSheet関数() - > setCellValue( 'F {$行}'、 '= E2')は:セルがあってはならない座標としておかげで、このラインを書く –

関連する問題