1

私はExcelファイルを作成するためにPHP Excelを使用しています。MySQL データベースから取得した php 配列値から Excel ファイルにデータを入力しています。最初の列に文字列データ型があります。しかし、Excel ファイルを作成した後、0987 のような文字列は 987 に変換され、セルの右側に自動的に配置されます。Excelファイルのこのデフォルト機能は本当に必要ありません。どうすればこの問題を克服できますか。ヒント/解決策...助けて...

4

2 に答える 2

7

私はこのようにします:

$objPHPExcel->getActiveSheet()->setCellValue('A1', '="0987"')
于 2013-03-01T06:22:52.233 に答える
5

また:

// Set the value explicitly as a string
$objPHPExcel->getActiveSheet()
    ->setCellValueExplicit(
        'A1', 
        '0987', 
        PHPExcel_Cell_DataType::TYPE_STRING
    );

また

// Set the value as a number formatted with leading zeroes
$objPHPExcel->getActiveSheet()
    ->setCellValue('A3', 987);
$objPHPExcel->getActiveSheet()
    ->getStyle('A3')
    ->getNumberFormat()
    ->setFormatCode('0000');

最初のケースでは、setCellValue() メソッドではなく、setCellValueExplicit() メソッドを呼び出していることに注意してください。

fromArray() メソッドを使用して 1 つのステップでデータのブロックを入力する場合、特に、すべてのデータを入力した後、1 つのステップでセルのブロック全体のスタイルを設定できるため、後者のアプローチがおそらく簡単です。 .

$objPHPExcel->getActiveSheet()
    ->getStyle('A3:A123')
    ->getNumberFormat()
    ->setFormatCode('0000');
于 2013-03-01T07:28:07.143 に答える