OVH Cloud OVH Cloud

Lecture fichiers Excel

6 réponses
Avatar
NicolasP
Bonjour,

J'ai besoin de récupérer une partie du contenu de fichiers Excel (.xls) pour manipulations diverses et variées.
J'ai vu plusieurs librairies susceptibles de faire l'affaire dans le "Python cheese shop". Mais comme je n'en connais aucun, je ne sais pas lequel serait le plus adapté à ce que j'ai à faire : récupérer les données des cellules d'une des feuilles présentes dans le document.
Quelqu'un a des recommandations ?

Nicolas

6 réponses

Avatar
Olivier Ravard
NicolasP wrote:
Bonjour,

J'ai besoin de récupérer une partie du contenu de fichiers Excel (.xls)
pour manipulations diverses et variées.
J'ai vu plusieurs librairies susceptibles de faire l'affaire dans le
"Python cheese shop". Mais comme je n'en connais aucun, je ne sais pas
lequel serait le plus adapté à ce que j'ai à faire : récupérer les
données des cellules d'une des feuilles présentes dans le document.
Quelqu'un a des recommandations ?

Nicolas
PyExelerator


Avatar
Laurent Rahuel
Olivier Ravard wrote:

NicolasP wrote:
Bonjour,

J'ai besoin de récupérer une partie du contenu de fichiers Excel (.xls)
pour manipulations diverses et variées.
J'ai vu plusieurs librairies susceptibles de faire l'affaire dans le
"Python cheese shop". Mais comme je n'en connais aucun, je ne sais pas
lequel serait le plus adapté à ce que j'ai à faire : récupérer les
données des cellules d'une des feuilles présentes dans le document.
Quelqu'un a des recommandations ?

Nicolas
PyExelerator



Comme le dit Olivier (bonjour en passant), PyExelerator, est le plus adapté
dans ce cas.


Avatar
Méta-MCI
Bonjour !


Deux cas :

Si Excel n'est pas installé, pxexcelerator est, comme on te l'a conseillé,
une bonne solution.

Si Excel est présent sur la machine, inspire-toi de ce code :

import win32com.client
excel = win32com.client.Dispatch('Excel.Application')
excel.Visible = 0 #1 pour voir ce qui se passe, mais plus lent
feuille = excel.Workbooks.Open("C:ess.xls")
listvaleur = excel.Range("A1:D5").Value
excel.Quit()
for lig in listvaleur:
print lig

ce code visualise le contenu A1:D5 de la feuille C:ess.xls


@-salutations

Michel Claveau
Avatar
NicolasP
Olivier Ravard wrote:

NicolasP wrote:
Bonjour,

J'ai besoin de récupérer une partie du contenu de fichiers Excel (.xls)
pour manipulations diverses et variées.
J'ai vu plusieurs librairies susceptibles de faire l'affaire dans le
"Python cheese shop". Mais comme je n'en connais aucun, je ne sais pas
lequel serait le plus adapté à ce que j'ai à faire : récupérer les
données des cellules d'une des feuilles présentes dans le document.
Quelqu'un a des recommandations ?

Nicolas
PyExelerator



Comme le dit Olivier (bonjour en passant), PyExelerator, est le plus adapté
dans ce cas.
Merci


Nicolas



Avatar
NicolasP
Bonjour,

Si Excel est présent sur la machine, inspire-toi de ce code :

import win32com.client
excel = win32com.client.Dispatch('Excel.Application')
excel.Visible = 0 #1 pour voir ce qui se passe, mais plus lent
feuille = excel.Workbooks.Open("C:ess.xls")
listvaleur = excel.Range("A1:D5").Value
excel.Quit()
for lig in listvaleur:
print lig

ce code visualise le contenu A1:D5 de la feuille C:ess.xls


Je me doutais bien que le pro du COM me proposerait une solution :)

Mais pas de chance, Excel n'est pas installé sur le PC.

J'ai fais un rapide test avec pyExcelerator. Ca devrait me convenir parfaitement.

Merci

Nicolas

Avatar
Olivier Ravard
Laurent Rahuel wrote:
Olivier Ravard wrote:

NicolasP wrote:
Bonjour,

J'ai besoin de récupérer une partie du contenu de fichiers Excel (.xls)
pour manipulations diverses et variées.
J'ai vu plusieurs librairies susceptibles de faire l'affaire dans le
"Python cheese shop". Mais comme je n'en connais aucun, je ne sais pas
lequel serait le plus adapté à ce que j'ai à faire : récupérer les
données des cellules d'une des feuilles présentes dans le document.
Quelqu'un a des recommandations ?

Nicolas
PyExelerator



Comme le dit Olivier (bonjour en passant), PyExelerator, est le plus adapté
dans ce cas.


oui, bonjour.