/ / PHP Com Excelフィルターの適用-php、excel、web、ms-office

PHP Com Excelのフィルタを適用する - php、Excel、web、ms-office

私はCOMでExcelを開いていますが、うまく機能していますが、同じ列に2つのフィルターを同時に適用するのに問題があります。コードは次のとおりです。

$excel = new COM("excel.application") or die("Unable to instanciate excel");
$excel->Visible = 1;
$excel->DisplayAlerts = 1;

$wb = $excel->Workbooks->Open($dataFile);
$sheet = $wb->Worksheets(1);

// apply filters
$sheet->range("AS1")->AutoFilter(45, "<>"); // works with single filter

ただし、同じ列に2つのフィルターを同時に適用する場合、機能しません。

$sheet->range("AS1")->AutoFilter(45, "<> AND > 0"); // DOES NOT WORK

私の推測では、代わりに AND 上記の文のリテラル文字列として、実際のExcel定数を使用する必要があります Excel.XlAutoFilterOperator.xlAnd しかし、私はそれを得ることができません。

どんな助けでも大歓迎です。

回答:

回答№1は0

わかりました。追加のパラメーターを渡す必要がありました。

define("xlAnd", 1);

$sheet->range("AS1")->AutoFilter(45, "<>", xlAnd, "> 0");