Bonsoir à tous !
Je suis nouveau ici, je parcours ce forum depuis bientot quelques mois pour arriver à programmer un outil basé sur Excel 2003 dans le cadre d'un stage, et on trouve pleins mal de choses intéressantes ici !
Mais ce soir à mon tour de créer un sujet :
Tout d'abord regardez la copie d'écran en bas de la page.
Dans l'arborescence de l'explorateur du projet on trouve la feuille "ThisWorkbook", 3 feuilles excel normales (Feuil1 , Feuil2 et Feui3) ... et 3 mysterieuses feuilles nommées Feuil10 , 11 et 6.
Ces 3 feuilles ont exactement les meme propriété que celle de ThisWorkbook (pour preuve les propriété de Feuil 10 en bas de l'image, qui porte comme (Name) : "ThisWorkbook" !), il est impossible de les supprimer (l'option étant grisée), elle n'ont aucun code VBA associé (alors que Thisworkbook en contient), et lorsqu'on essaye de visualiser l'objet auquel elles se réferent, cela mène pour toutes les 3 directement à la Feuil1 !
L'outil en question à besoin pour fonctionner d'ouvrir un autre classeur Excel , que l'on appelera "Source", de copier l'intégralité des feuilles qu'il contient, puis de les coller dans le classeur courant à la suite de Feuil1 , 2 et 3. Lors de la fermeture de l'outil c'est opération dans le sens inverse qui est effectuée, c'est à dire suppression de "Source", création d'un nouveau fichier excel Source dans lequel sont recopiées des feuilles du classeur courant de l'outil (sauf les 3 première), puis suppression des ces feuilles qui sont encore dans le classeur courant de l'outil. L'outil est par défaut vide de base de données à l'exception des 3 première feuilles.
De meme les feuilles copiées constituent la base de données avec laquelle l'outil fonctionne, pour différentes raison elles ne doivent pas etre accessible à l'utilisateur, elles sont donc cachées (xlVeryHidden) pendant l'utilisation, mais sont remise en .visible juste pendant les opération de copie.
J'ai réalisé jusqu'à une quinzaine de chargement, déchargement du fichier source dans l'outil, avec sauvegarde ou non, de façon à voir à quel moment les feuilles mystères apparaissaient, mais rien de tout cela n'a provoqué le bug. Elles sont malgré tout apparu plus tard, mais je ne sais pas à la suite de quel opération !!
Elles sont trés génante car elles provoquent le décalage du nom (Feuil i) et de l'indice des feuilles importées, du coup tout l'outil plante puisque les références aux feuilles ne correspondent plus.
enfin à noter que le fichier "Source", aprés sauvegarde par l'outil et l'apparition du bug, contient toujours les bonnes feuilles avec les bon noms et les bons indices! Donc le bug semble ne pas venir du fichier Source.
Questions donc :
- Que sont ces feuilles ?
- Est-ce qu'il s'agit d'un bug d'Excel ou de mon outil ?
- Quel type de procédure ou de méthode peut provoquer ça ?
Merci infiniment pour votre aide et vos conseils!
Partager