ImportError: aucun module nommé win32com.client

87

J'utilise actuellement python 2.7 et j'essaye d'ouvrir une feuille Excel. Lorsque vous utilisez le code ci-dessous:

import os
from win32com.client import Dispatch

xlApp = win32com.client.Dispatch("Excel.Application")
xlApp.Visible = True
# Open the file we want in Excel
workbook = xlApp.Workbooks.Open('example.xls')

J'obtiens cette erreur:

ImportError: aucun module nommé win32com.client

Y a-t-il une possibilité d'obtenir l'erreur puisque j'utilise une machine Windows 64 bits?

user3194189
la source
4
Juste en vérifiant, avez-vous installé les extensions: sourceforge.net/projects/pywin32 Ce n'est pas une bibliothèque standard.
Dair
1
Votre question a reçu une réponse ici: superuser.com/questions/609447/… et ici: stackoverflow.com/questions/7978510/…
Jordy19
Notez que le code ci-dessus donne une erreur même si le win32com est installé correctement. La troisième ligne doit être xlApp = Dispatch ("Excel.Application")
ger.s.brett

Réponses:

147

pip install pywin32n'a pas fonctionné pour moi mais a pypiwin32fait.

Mitch44
la source
9
Si vous ne trouvez pas pip sur la ligne de commande, cela fonctionne aussi: 'python -m pip install pypiwin32'
RoyM
2
Aucun de ceux-ci n'a fonctionné pour moi. J'ai essayé à la fois pypiwin32 et pywin32 et ils n'ont pas fonctionné tous les deux.
Tiskolin
9
J'obtiens une erreur: Impossible de trouver une version qui satisfait à l'exigence pywin32> = 223 (à partir de pypiwin32) (à partir des versions:) Aucune distribution correspondante trouvée pour pywin32> = 223 (à partir de pypiwin32) bien que je sois sur Python 2.7.10 - est-ce que quelqu'un sait comment le faire?
MACC
@MACC J'ai le même problème, mais j'utilise deux versions de python et je pense qu'ils sont confus. L'avez-vous déjà compris?
daniel9x
25

win32com.clientfait partie de pywin32

Alors, téléchargez pywin32 d' ici

Nishant Thapliyal
la source
15

Essayez cette commande:

pip install pywin32

Remarque

Si cela donne l'erreur suivante:

Impossible de trouver une version qui satisfait à l'exigence pywin32> = 223 (à partir de pypiwin32) (à partir des versions :)
Aucune distribution correspondante trouvée pour pywin32> = 223 (à partir de pypiwin32)

mettre à niveau 'pip', en utilisant:

pip install --upgrade pip
Anil MS
la source
11

Essayez les deux pip install pywin32et pip install pypiwin32.

Ça marche.

Janani Selvan
la source
6

Je me rends compte que cet article est ancien mais je voulais ajouter que je devais faire un pas supplémentaire pour que cela fonctionne.

Au lieu de simplement faire:

pip install pywin32

J'avais utilisé le -mdrapeau pour que cela fonctionne correctement. Sans cela, je rencontrais un problème où j'obtenais toujours l'erreur ImportError: No module named win32com.

Donc, pour résoudre ce problème, vous pouvez essayer ceci:

python -m pip install pywin32

Cela a fonctionné pour moi et a travaillé sur plusieurs versions de python où le simple fait de faire pip install pywin32ne fonctionnait pas.

Versions testées sur:

3.6.2, 3.7.6, 3.8.0, 3.9.0a1.

Mike - SMT
la source
0

Essayez d'installer le fichier "pywin32", vous pouvez le trouver sur https://github.com/mhammond/pywin32/releases

Installez la version que vous utilisez dans votre IDLE et essayez d'installer, après avoir ouvert votre projet et compiler un autre tour!

Merci !

Bob l'éponge
la source
0

dans certains cas où pywin32 n'est pas la référence directe et d'autres bibliothèques nécessitent l'installation de pywin32-ctypes; provoque le "ImportError: Aucun module nommé win32com" lorsque l'application est fournie avec pyinstaller.

l'exécution de la commande suivante résout sur python 3.7 - pyinstaller 3.6

pip install pywin32==227
oetzi
la source