J'exporte les résultats de mon script dans une feuille de calcul Excel. Tout fonctionne très bien, je mets de grands ensembles de données dans SpreadSheet, mais parfois une erreur se produit:Erreur d'entrée de données win32com Excel
File "C:\Python26\lib\site-packages\win32com\client\dynamic.py", line 550, in __setattr__
self._oleobj_.Invoke(entry.dispid, 0, invoke_type, 0, value)
pywintypes.com_error: (-2147352567, 'Exception.', (0, None, None, None, 0, -2146777998), None)***
Je suppose que ce n'est pas un problème de format de données d'entrée. J'ai mis plusieurs types de chaînes de données, ints, flottants, listes et cela fonctionne bien. Quand je lance le script pour la deuxième fois, ça fonctionne très bien - pas d'erreur. Que se passe-t-il?
PS. C'est un code qui génère une erreur, ce qui est étrange, c'est que l'erreur ne se produit pas toujours. Supposons que 30% des analyses entraînent une erreur. :
import win32com.client
def Generate_Excel_Report():
Excel=win32com.client.Dispatch("Excel.Application")
Excel.Workbooks.Add(1)
Cells=Excel.ActiveWorkBook.ActiveSheet.Cells
for i in range(100):
Row=int(35+i)
for j in range(10):
Cells(int(Row),int(5+j)).Value="string"
for i in range(100):
Row=int(135+i)
for j in range(10):
Cells(int(Row),int(5+j)).Value=32.32 #float
Generate_Excel_Report()
Le plus étrange pour moi est que quand je lance le script avec le même code, la même entrée plusieurs fois, alors parfois une erreur se produit, parfois pas.
Si possible, un morceau de code que les gens peuvent courir et recréer l'erreur serait très utile. Si ce n'est pas le cas, affichez au moins le morceau incriminé de votre code qui provoque cette erreur, et un exemple d'entrée réel (avec des valeurs et sans commentaires mélangés à l'intérieur). – taleinat
Il ne répond pas à votre question, mais j'ai eu de la chance avec les modules 'xlrd' et' xlwt': http://www.python-excel.org. – FMc
taleinat - J'ai édité la question - J'ai ajouté un morceau de code – Rafal