Re: [fr-users] conversion en masse de fichiers xls en csv

2011-04-22 Par sujet Jean-Baptiste Faure
Le 21/04/2011 15:21, Jean-Baptiste Faure a écrit :
> Bonjour,
> 
> Une doctorante de chez nous a 2800 fichiers xls dont elle a besoin
> d'extraire un certain onglet (elle en connait le nom) sous la forme d'un
> fichier csv.

Bonjour,

Merci pour vos réponses. Le problème est résolu et nous avons 2
approches pour le faire. C'est plus sûr. :-)

En réalité j'ai oublié un détail : le résultat final attendu suppose une
étape supplémentaire car il faut regrouper tous les fichiers csv
produits en un seul en les concaténant.
Autre détail qui n'est effectivement pas sans importance : notre
doctorante travaille sous Linux et n'a pas MS-Excel sur son poste de
travail.

- méthode 1 : utiliser xls2csv de façon à conserver proprement les
heures, utiliser un script shell à base de awk et sed pour séparer les
onglets et corriger les dates (toujours les mêmes dans un même onglet) à
partir du nom de fichier, concaténer les fichiers tout en procédant à un
petit nettoyage : shell avec cat et sed.

- methode 2 : utiliser batchconv modifié par Laurent Godard pour
extraire l'onglet voulu de tous les fichiers xls du répertoire.
Concaténer les fichiers csv obtenus comme avec la méthode 1.

La méthode 1 fonctionne presque parfaitement (des erreurs de nettoyage)
mais en 2 bonnes heures.

La partie batchconv de la méthode 2 fonctionne parfaitement. Je ne l'ai
pas encore testée sur les 2800 fichiers xls. Il me reste à bien
comprendre la macro que m'a fournie Laurent, à isoler le script de
concaténation et à faire un test en vrai grandeur.
Avant de l'appliquer à un autre stock de fichiers encore plus volumineux :-)

Je mettrai le code ici dés que je l'aurai compris. :-) Mais toutes les
infos nécessaires sont expliquées dans le bouquin de Laurent et Bernard
(Programmation OpenOffice.org et LibreOffice chez Eyrolles).

Cela pourrait peut-être donner une nouvelle version étendue de batchconv
avec cette option du choix de l'onglet à extraire lors de l'export en csv.

Bonne journée
JBF

-- 
Seuls des formats ouverts peuvent assurer la pérennité de vos documents.

-- 
Envoyez un mail à users+h...@fr.libreoffice.org pour savoir comment vous 
désinscrire
Les archives de la liste sont disponibles à 
http://listarchives.libreoffice.org/fr/users/
Tous les messages envoyés sur cette liste seront archivés publiquement et ne 
pourront pas être supprimés


Re: [fr-users] conversion en masse de fichiers xls en csv

2011-04-22 Par sujet yves dutrieux
Bonjour,

Le 21 avril 2011 15:21, Jean-Baptiste Faure  a écrit :

> Bonjour,
>
> Une doctorante de chez nous a 2800 fichiers xls dont elle a besoin
> d'extraire un certain onglet (elle en connait le nom) sous la forme d'un
> fichier csv.
>

Quel OS - version ? , c'est important pour savoir avec quels outils on peut
travailler.
Elle dispose d'excel en standard ou non ?
Délai d'urgence / de réalisation ?


> Par exemple si les fichier xls ont des noms du genre 2011-04-21.xls et
> que l'onglet se nomme toto, elle voudrait récupérer un fichier
> 2011-04-21_toto.csv.
> Elle a déjà vérifié que l'export csv à la main se passe bien.
>

> Je ne peux pas croire qu'on ne puisse pas automatiser ça assez
> simplement. Auriez-vous une piste à m'indiquer ?
>

ma première idée serait du powershell (je pense que ça devrait être
réalisable très facilement. je peux m'y mettre).
pré-requis : powershell dispo sur plateforme/objet excel dispo.
ma seconde est un script de conversion que j'ai déjà utilisé pour convertir
un dossier avec des .doc vers du .dot par exemple.
pré-requis : LibreOffice
suffirait je pense à le modifier un peu, mais là, il faut que je regarde de
+ près dans le script.
ma troisième serait un script perl qui manipule le fichier excel via les
objets com (j'ai déjà un script qu'il me faudrait adapter...)
pré-requis : perl-excel

Yves

>
> NB: elle essaye par ailleurs de faire le boulot avec xls2csv mais il y a
> des problèmes de conversion de formats de date et d'heures qui ne sont
> pas compatibles : si ça marche pour l'un on perd l'autre.
>
> Merci de votre aide.
> JBF
>
> --
> Seuls des formats ouverts peuvent assurer la pérennité de vos documents.
>
> --
> Envoyez un mail à users+h...@fr.libreoffice.org pour savoir comment vous
> désinscrire
> Les archives de la liste sont disponibles à
> http://listarchives.libreoffice.org/fr/users/
> Tous les messages envoyés sur cette liste seront archivés publiquement et
> ne pourront pas être supprimés
>



-- 
web site : http://www.molenbaix.com

-- 
Envoyez un mail à users+h...@fr.libreoffice.org pour savoir comment vous 
désinscrire
Les archives de la liste sont disponibles à 
http://listarchives.libreoffice.org/fr/users/
Tous les messages envoyés sur cette liste seront archivés publiquement et ne 
pourront pas être supprimés



Re: [fr-users] conversion en masse de fichiers xls en csv

2011-04-21 Par sujet Fabrice

Avec un petit script Perl cela devrait être facile en utilisant ce package :

http://search.cpan.org/~jmcnamara/Spreadsheet-ParseExcel-0.59/lib/Spreadsheet/ParseExcel.pm

Il y a des méthodes pour récupérer les Worksheet et ensuite itérer sur 
les cellules.
Jamais utilisé ce package pour ma part mais j'utilise l'autre, pour 
créer des fichiers Excel, et ça marche très bien.


http://search.cpan.org/~jmcnamara/Spreadsheet-WriteExcel-2.37/lib/Spreadsheet/WriteExcel.pm

Comme c'est le même auteur, la qualité doit être la même...

--
Envoyez un mail à users+h...@fr.libreoffice.org pour savoir comment vous 
désinscrire
Les archives de la liste sont disponibles à 
http://listarchives.libreoffice.org/fr/users/
Tous les messages envoyés sur cette liste seront archivés publiquement et ne 
pourront pas être supprimés



Re: [fr-users] conversion en masse de fichiers xls en csv

2011-04-21 Par sujet Jean-Baptiste Faure
Le 21/04/2011 15:31, pierre-yves.samyn a écrit :
> 
> Bonjour
> 
>> Message du 21/04/11 15:22
>> De : "Jean-Baptiste Faure" 
>>
>> Une doctorante de chez nous a 2800 fichiers xls dont elle a besoin 
>> d'extraire 
>> un certain onglet (elle en connait le nom) sous la forme d'un fichier csv.
>> ...
>> Je ne peux pas croire qu'on ne puisse pas automatiser ça assez simplement. 
> 
> Je n'ai pas testé les possiblités mais je pense aux outils de L. Godard :
> "BatchConv est un outil de transformation par lot d'une liste de fichier 
> depuis et vers
> tout format supporté par OpenOffice.org."
> 
> http://oooconv.free.fr/batchconv/batchconv_fr.html

Laurent vient de me confirmer que batchconv ne sait pas sortir un onglet
particulier.
Je vais voir si on peut arranger ça.

Bonne journée
JBF

-- 
Seuls des formats ouverts peuvent assurer la pérennité de vos documents.

-- 
Envoyez un mail à users+h...@fr.libreoffice.org pour savoir comment vous 
désinscrire
Les archives de la liste sont disponibles à 
http://listarchives.libreoffice.org/fr/users/
Tous les messages envoyés sur cette liste seront archivés publiquement et ne 
pourront pas être supprimés


RE: [fr-users] conversion en masse de fichiers xls en csv

2011-04-21 Par sujet Michel Rudelle
Bonjour,

> De : Jean-Baptiste Faure [mailto:jbf.fa...@orange.fr]
> Envoyé : jeudi 21 avril 2011 15:21
> 
> Bonjour,
> 
> Une doctorante de chez nous a 2800 fichiers xls dont elle a besoin
> d'extraire un certain onglet (elle en connait le nom) sous la forme d'un
> fichier csv.
> Par exemple si les fichier xls ont des noms du genre 2011-04-21.xls et
> que l'onglet se nomme toto, elle voudrait récupérer un fichier
> 2011-04-21_toto.csv.
> Elle a déjà vérifié que l'export csv à la main se passe bien.
> 
> Je ne peux pas croire qu'on ne puisse pas automatiser ça assez
> simplement. Auriez-vous une piste à m'indiquer ?
> 
> NB: elle essaye par ailleurs de faire le boulot avec xls2csv mais il y a
> des problèmes de conversion de formats de date et d'heures qui ne sont
> pas compatibles : si ça marche pour l'un on perd l'autre.
> 
> Merci de votre aide.
> JBF

Etant donné les spécifications d'extraction d'un onglet particulier et
d'export avec un nom spécifique, je doute que l'on trouve une appli qui
puisse le faire directement.

Pour avoir déjà réalisé séparément chacune de ces caractéristiques, je pense
qu'avec une macro c'est assez facile, et pour 2800 fichiers ça vaudrait la
peine d'y investir un peu de temps. Mais à condition d'avoir déjà pratiqué
les macros ... ce qui n'est pas forcément le cas commun.

Si cette doctorante ou une autre personne de son entourage pratique un peu
les macros, je peux donner quelques exemples extraits de mes différentes
macros illustrant les principaux traitements ...

Bonne journée,

Michel


-- 
Envoyez un mail à users+h...@fr.libreoffice.org pour savoir comment vous 
désinscrire
Les archives de la liste sont disponibles à 
http://listarchives.libreoffice.org/fr/users/
Tous les messages envoyés sur cette liste seront archivés publiquement et ne 
pourront pas être supprimés



Re:[fr-users] conversion en masse de fichiers xls en csv

2011-04-21 Par sujet pierre-yves.samyn

Bonjour

> Message du 21/04/11 15:22
> De : "Jean-Baptiste Faure" 
>
> Une doctorante de chez nous a 2800 fichiers xls dont elle a besoin d'extraire 
> un certain onglet (elle en connait le nom) sous la forme d'un fichier csv.
> ...
> Je ne peux pas croire qu'on ne puisse pas automatiser ça assez simplement. 

Je n'ai pas testé les possiblités mais je pense aux outils de L. Godard :
"BatchConv est un outil de transformation par lot d'une liste de fichier depuis 
et vers
tout format supporté par OpenOffice.org."

http://oooconv.free.fr/batchconv/batchconv_fr.html

Cordialement
Pierre-Yves

Une messagerie gratuite, garantie à vie et des services en plus, ça vous tente ?
Je crée ma boîte mail www.laposte.net


-- 
Envoyez un mail à users+h...@fr.libreoffice.org pour savoir comment vous 
désinscrire
Les archives de la liste sont disponibles à 
http://listarchives.libreoffice.org/fr/users/
Tous les messages envoyés sur cette liste seront archivés publiquement et ne 
pourront pas être supprimés