je suis toujours sur le même fichier, mais là je cherche à exclure les lignes, d'un tableau excel, qu'il trouve en inconnu, et les ressortir dans un nouveau fichier excel, mais voilà, je n'arrive pas à trouver comment sélectionner une ligne puis l'intégrer dans ce nouveau fichier avec PHPSpreadSheet.
J'ai bien vu qu'on pouvait sélectionner des cellules de manière unique ou en groupe, mais je ne trouve rien sur des lignes!?
Actuellement, il me ressort la totalité du fichier d'origine, donc toutes les lignes, et m’envoie bien les mails correspondant aux bonnes lignes en erreur...
Merci d'avance pour votre aide!
<?php
require_once "config.php";
require_once "vendor/autoload.php";
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Reader\Xlsx;
$rowError = array();
if ($dir = opendir('C:\laragon\www\xlsxToCsv\Import')) {
while (false !== ($file = readdir($dir))) {
if ($file != ".." && $file != "." && $file != "ERREUR" && $file != "IMPORTER" && $file != "ARCHIVES" && $file != "Entete_type.xlsx" && $file != "Thumbs.db") {
$reader = new Xlsx();
$writer = new \PhpOffice\PhpSpreadsheet\Writer\Xlsx($spreadsheet);
$spreadsheet = $reader->load('C:\laragon\www\xlsxToCsv\Import\\' . $file);
$sheetData = $spreadsheet->getActiveSheet()->toArray();
if (!empty($sheetData)) {
for ($i = 1; $i < count($sheetData); $i++) { //Saut de la 1ere ligne entete
$numMag = $sheetData[$i][10];
$libMag = $sheetData[$i][11];
$row = $sheetData[$i];
$searchMag = Find_mag($numMag);
if (empty($searchMag)) {
$dest = "";
$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1" . "\r\n";
$message = "<html>
<head>
<title></title>
</head>
<body>
</body>
</html>";
mail($dest, "", $message, $headers);
array_push($rowError, $i);
$writer->setOffice2003Compatibility(true);
$writer->save("./Erreurs/errorList.xlsx");
}
}
}
}
}
closedir($dir);
}