0

それは簡単な質問です。

私はPHP Excelをゼロから構築していますが、これは非常に便利なパッケージです。どのセルを変更してカスタマイズするかを知るために、アクティブなセルまたは行をキャッチする必要があります。パッケージ内のすべてのメソッドをチェックしましたが、役立つものは見つかりませんでした。次のようなデータを挿入しています。

$sheet->appendRow(array(
                $variable->value1,
                $variable->value2,
                $variable->value3,
            ));

そして、次のようなものをカスタマイズしたいと思います(この例では背景色を変更しています)。

//The XXX is the last active row that I append some value before
$sheet->cells('XXXX',function ($cells){
                $cells->setBackground('#34EC34');
            });

「XXX」の代わりにアクティブなセルまたは行を見つける方法はありますか? 誰かが変数 $row でアクセスしているというStackに関する質問を見つけましたが、アクセス方法がわかりませんでした....

4

2 に答える 2

0
  1. vendor/maatwebsite/excel/src/Maatwebsite/Excel/Classes/LaravelExcelWorksheet.php のクラス名「LaravelExcelWorksheet」に移動します。

  2. getStartRow のメソッド修飾子を protected から public に変更してみてください

  3. $sheet->getStartRow() で使用できます。これにより、アクティブな行が表示されます
于 2016-07-03T17:15:49.267 に答える
0

Kaewの答えは機能しますが、LaravelExcelソースを変更せずにこれを行うには、 getStartRow() が内部で使用するメソッド getHighestRow() を使用し、必要に応じて戻り値に追加します。

getStartRow() メソッドの Laravel Excel 2.1 ソースを次に示します

于 2021-05-06T15:21:33.250 に答える