Bonjour,
Voici un code qui fonctionne parfaitement sous xp:
lorsque j'essaie d'exécuter ce script sur windows 8, j'ai ce traceback:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 # -*- coding: UTF-8 -*- #Imporation des modules import win32com.client as win32 import win32com.client.dynamic from pywintypes import UnicodeType, TimeType import os excel = win32.gencache.EnsureDispatch('Excel.Application') xls = excel.Workbooks.Open ('F:\Classeur1.xls') # passage sur la 1ère feuille pour y mettre les infos de chantier pos = xls.Worksheets("Feuil1") pos.Activate() #on active cette feuille excel.Visible = False # # Ici le travail d'édition de la première feuille #par exemple je mets un texte dans la 1ere cellule de la premiére colonne attention ici c'est d'abord la ligne puis la colonne et ca commence à 1 au lieu de 0 d'habitude pos.Cells(1,1).Value = 'test' # on va chercher la deuxième de feuille (celle du devis) sht = xls.Worksheets('Feuil2') sht.Activate() sht.Cells(13,8).Value = 40 #sauvegarde simple... xls.SaveAs('F:\test.xls') xls.Close() del excel # Preferer ceci à celle en dessous, car celle-là ne ferme pas le fichier d'origine. #excel.Application.Quit() os.startfile('F:\test.xls')
Par contre si je mets en ligne 26:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Traceback (most recent call last): File "<module1>", line 53, in <module> File "C:\Users\PIERR_~1\AppData\Local\Temp\gen_py\2.7\00020813-0000-0000-C000-000000000046x0x1x6\_Workbook.py", line 253, in SaveAs , Local) com_error: (-2147352567, 'Une exception s\x92est produite.', (0, u'Microsoft Office Excel', u"Impossible d'acc\xe9der \xe0 \xab\xa0F:\\/\xa0\xbb. Le fichier peut \xeatre endommag\xe9, en lecture seule ou enregistr\xe9 sur un serveur qui ne r\xe9pond pas.", u'C:\\Program Files (x86)\\Microsoft Office\\Office12\\1036\\XLMAIN11.CHM', 0, -2146827284), None)
Et en ligne 30:
Code : Sélectionner tout - Visualiser dans une fenêtre à part xls.Save()
mon "Classeur1.xls" souvre bien avec les modifs et le script se termine sans erreur...
Code : Sélectionner tout - Visualiser dans une fenêtre à part os.startfile()
quelqu'un s'aurait-il pourquoi la fonction xls.SaveAs(nomdefichier) ne fonctionne pas ?
Merci d'avance,
Partager