76

PHPExcel で生成された Excel ドキュメントのセルの幅を次のように設定しようとしています。

$objPHPExcel->getActiveSheet()->getColumnDimensionByColumn('C')->setWidth('10');
$objPHPExcel->getActiveSheet()->getColumnDimensionByColumn('C')->setAutoSize(false);

しかし、それは機能しません。

ここで呼び出す必要があるメソッドは何ですか?

4

8 に答える 8

187

微妙な違いですが、これは私にとってはうまくいきます:

$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(10);

との違いに注意してくださいgetColumnDimensionByColumngetColumnDimension

また、AutoSize も設定していませんが、正常に動作します。

于 2011-08-13T11:45:22.947 に答える
8

こんにちは、私は同じ問題を抱えています.. Excel のセル幅の値に 0.71 を追加し、その値を

$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(10);

例: A 列幅 = 3.71 (Excel 値)

列幅を与える= 4.42

同じセル幅の出力ファイルが得られます。

$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(4.42);

この助けを願っています

于 2015-02-08T21:05:29.983 に答える
5

これは、getColumnDimensionByColumnが文字列ではなく列インデックス (0 から始まる整数) を受け取るためです。

同じことがsetCellValueByColumnAndRowにも当てはまります

于 2015-11-05T19:35:21.310 に答える
5

以下のように設定された列幅のautoSize。わたしにはできる。

$spreadsheet->getActiveSheet()->getColumnDimension('A')->setAutoSize(true);
于 2018-03-15T07:31:08.683 に答える
1

列幅を設定する正しい方法は、Jahmic によって投稿された行を使用することですが、さらに、データを追加する前ではなく、後にスタイリングを適用する必要があることに注意することが重要です。そうしないと、構成によっては列幅が未適用

于 2014-08-14T08:32:39.930 に答える