Bonjour,

Je vous propose un nouvel élément à utiliser : Comment convertir un fichier Excel en fichier csv ou txt ?

Le code ci-dessous permet de convertir un fichier excel 2007 (ou antérieur) en fichier txt, csv ou autre fichier plat.



Le choix du séparateur est laissé à l'utilisateur.

Si l'on on précise un répertoire, le fichier convertit sera créé dans ce dernier, sinon, il sera créé dans le même répertoire que le fichier excel.

On peut choisir de convertir toutes les feuilles ou non du fichier excel en mettant -feuilles à 1 => tout sera convertit, ou à 0 et dans ce cas, à chaque feuille une confirmation sera demandée.



Attention : Nous avons utilisé ici la méthode print {$fh} $oWkC->Value, $Separateur;



Mais cette méthode peut nous générer des erreurs inattendues :

explication documentation officielle

-------------------------------------------------------

value()



The value() method returns the formatted value of the cell.



my $value = $cell->value();



Formatted in this sense refers to the numeric format of the cell value.

For example a number such as 40177 might be formatted as 40,117, 40117.000 or even as the date 2009/12/30.



If the cell doesn't contain a numeric format then the formatted and unformatted

cell values are the same, see the unformatted() method below.



For a defined $cell the value() method will always return a value.



In the case of a cell with formatting but no numeric or string contents

the method will return the empty string ''.

-------------------------------------------------------



Pour éviter tout souci, utilisez plutôt la méthode unformatted.



print {$fh} $oWkC->unformatted, $Separateur;



Qu'en pensez-vous ?