PHPExcel: Usunięcie wybranych kolumn z arkusza

2012-06-28 PHP

Biblioteka PHPExcel to świetne narzędzie, pomocne przy generowaniu arkuszy kalkulacyjnych za pomocą PHP. Wśród szeregu dostępnych możliwości jest taka, która umożliwia usunięcie kolumny aktywnego arkusza. Aby tego dokonać wystarczy wywołanie poniższej metody. Aby było efektywnej, zdefiniujemy tablicę w której jako elementy przekażemy nazwy kolumn, których chcemy się pozbyć. Np.:

$delCols = array();

Jeśli tablica $delCols będzie pusta to skrypt niczego nie usunie. My dla przykładu usuniemy kolumnę "E" z generowanego przez Nas pliku xslx.

$delCols = array('E');

Oczywiście możemy posłużyć się prostym wywołaniem metody removeColumn(); poprzez:

$objPHPExcel->getActiveSheet()->removeColumn('E');

lecz jeśli hurtowo chcemy się pozbyć n kolumn to warto ułatwić sobie rozwiązanie poprzez użycie właśnie tablicy i funkcji foreach();

if ( is_array($delCols) && !(empty($delCols)) )
{
  foreach ($delCols as $col)
  {
    $col = trim(strtoupper($col));
    $objPHPExcel->getActiveSheet()->removeColumn($col);
  }
}

Jeśli zdefiniowana tablica zawiera nazwy kolumn do usunięcia to metoda removeColumn() zostanie wywołana tyle razy ile kolumn chcemy usunąć. To rozwiązanie to jedynie przykład i pokazanie samej funkcji. Oczywiście można jej użyć w bardziej zaawansowany sposób. Tutaj zobrazowano jedynie idee. Mam nadzieje, że pomocną.

Do NOT follow this link or you will be banned from the site!