Bonjour !
J'étais déjà venue poser une question ici à propos d'un problème concernant également Excel et VB.Net. Je charge un fichier xls/xlt/xlsx en générant un tabcontrol avec X tabpage ou x représente le nombre de feuilles du fichier. Pour chaque tabPage j'initialise un datagridview dans lequel je charge ma page Excel x.
J'avais posé une question à propos des drivers qui déconnaît ici :
http://www.developpez.net/forums/sho...d.php?t=512411
Mais j'ai actuellement un autre problème pénalisant. Notre programme va charger des fichiers excel qui seront, généralement, crées à l'avance à partir du programme Omnipage (programme de reconnaissance de texte numérisé). Alors qu'un fichier créés par mes soins, par exemple, se charge sans problème, un fichier génerés par Omnipage ne se chargera pas.
Le comportement est le suivant : le programme fonctionne jusqu'à la ligne ou je remplis mon DataSet (DataAdapter.Fill(DataSet). A ce moment le programme ne plante pas, mais l'activité s'arrête, en faisant du debugging, le programme me dit, après cette ligne :
Aucun code source n'a été chargé pour un frame de pile des appels. Le code source ne peut pas être affichés.
Et il me demande si je veux afficher le code machine. En mettant un point d'arrêt juste après ma ligne de remplissage, je constate que le programme n'atteint jamais cette ligne. En faisant un try / catch, j'ai cette exception :
Trop de champs définis.
Seulement si j'ouvre mon fichier problématique et que je l'enregistre à nouveau (ou si je l'enregistre sous un autre nom) il fonctionne à nouveau. Et en vérifiant le avant/après on remarque que la taille du fichier reste la même, donc il ne rogne pas les possibles champs en trop.
Quelqu'un a une idée ? Une parade possible ? Est-ce possible, avant d'ouvrir le fichier, de vérifier ce problème et de le corriger dans le fichier excel ? (file.saveas, ou que sais-je)
Merci.
Partager