jeff1494
XLDnaute Occasionnel
Bonjour à toutes et tous;
Je rencontre un problème que je ne m'explique pas.
Explication de mon problème :
Ce classeur est composé des onglets suivants :
En fait j’ai écrit des macros pour automatiser les traitements. La première d’entre elles est celle appelée « Suppress_accolades ». Elle a pour rôle de supprimer toutes les lignes comportant des accolades. Elle fonctionne bien.
Par contre dès que je dois commencer à modifier les valeurs de cellules, c’est à ce moment que commencent mes problèmes.
La macro « TRT_LIG » ne fonctionne pas correctement. Je vais essayer de détailler ce que j’ai pu constater.
Je commence par rechercher la ligne qui contient la chaine «"setting_version": 9, », pour pouvoir commencer le traitement. À savoir la création des premières lignes de la feuille Rescura. Pas de problèmes pour ces deux lignes. Ces deux valeurs ne se retrouvent plus jamais dans la colonne.
Puis après j’entame la boucle de lecture pour les autres valeurs de la colonne A. Et là rien ne va plus. Cete boucle doit me permettre de n'agir que sur certaines cellules au contenu identifié, et ainsi remplir mes feuilles résultat que sont "Rescura" et "Resref".
Pour l'instant je suis focalisé sur le remplissage de la feuille "Rescura", car une fois que j'aurai compris et réglé le problème le traitement de la feuille "Resref" est très similaire.
Si je j’exécute la macro par F8 en pas à pas certaines fois j’arrive à traiter deux fois l’étiquette « label » et d’autres fois je ne traite qu’une seule étiquette « label ».
Si j’exécute la macro automatiquement je ne traite que la première occurrence, puis plus rien d'autre.
La variable contenant le contenu d’une cellule reste vide après quelques boucles.
Donc si quelqu’un peut m’aider à comprendre pourquoi cela ne fonctionne pas je lui en serais reconnaissant.
En fait je voudrais arriver à régler les problèmes pour la feuille « Rescura », puis de me servir de ce traitement pour comprendre et faire le traitement de la feuille « Resref » par moi-même.
Je précise que je ne suis pas un pro du développement VBA et que ce que j’ai écrit dans ces macros reste une adaptation de plusieurs morceaux de code, donc je demande votre indulgence, et accepte toutes critiques (constructives), et conseils.
Je vous joins un fichier exemple pour illustrer ce que j'ai fait et pour vous permettre de me comprendre(j'espère que cela ne sera pas trop difficile).
J'espère avoir été assez clair et je suis à votre entière disposition pour tout renseignement.
D'avance merci à ceux (celles) qui auront la gentillesse de se pencher sur mon problème. Bonne journée à toutes et tous.
Je rencontre un problème que je ne m'explique pas.
Explication de mon problème :
Ce classeur est composé des onglets suivants :
- Reference : Onglet montrant un des deux résultats à obtenir.
- Cura : Onglet montrant l’autre résultat à obtenir.
- Donnees : Cette feuille contient les données de base qui vont être traitées pour obtenir les deux résultats cherchés.
- Rescura : Une feuille de travail pour les modifications des données. Le résultat doit être ce qui est montré dans l’onglet Cura.
- Resref : Une feuille de travail pour les modifications des données. Le résultat doit être ce qui est montré dans l’onglet Reference.
- SaveDonneesEntree : Une sauvegarde des données avant tout traitement, de manière à pouvoir tout recommencer depuis le début.
En fait j’ai écrit des macros pour automatiser les traitements. La première d’entre elles est celle appelée « Suppress_accolades ». Elle a pour rôle de supprimer toutes les lignes comportant des accolades. Elle fonctionne bien.
Par contre dès que je dois commencer à modifier les valeurs de cellules, c’est à ce moment que commencent mes problèmes.
La macro « TRT_LIG » ne fonctionne pas correctement. Je vais essayer de détailler ce que j’ai pu constater.
Je commence par rechercher la ligne qui contient la chaine «"setting_version": 9, », pour pouvoir commencer le traitement. À savoir la création des premières lignes de la feuille Rescura. Pas de problèmes pour ces deux lignes. Ces deux valeurs ne se retrouvent plus jamais dans la colonne.
Puis après j’entame la boucle de lecture pour les autres valeurs de la colonne A. Et là rien ne va plus. Cete boucle doit me permettre de n'agir que sur certaines cellules au contenu identifié, et ainsi remplir mes feuilles résultat que sont "Rescura" et "Resref".
Pour l'instant je suis focalisé sur le remplissage de la feuille "Rescura", car une fois que j'aurai compris et réglé le problème le traitement de la feuille "Resref" est très similaire.
Si je j’exécute la macro par F8 en pas à pas certaines fois j’arrive à traiter deux fois l’étiquette « label » et d’autres fois je ne traite qu’une seule étiquette « label ».
Si j’exécute la macro automatiquement je ne traite que la première occurrence, puis plus rien d'autre.
La variable contenant le contenu d’une cellule reste vide après quelques boucles.
Donc si quelqu’un peut m’aider à comprendre pourquoi cela ne fonctionne pas je lui en serais reconnaissant.
En fait je voudrais arriver à régler les problèmes pour la feuille « Rescura », puis de me servir de ce traitement pour comprendre et faire le traitement de la feuille « Resref » par moi-même.
Je précise que je ne suis pas un pro du développement VBA et que ce que j’ai écrit dans ces macros reste une adaptation de plusieurs morceaux de code, donc je demande votre indulgence, et accepte toutes critiques (constructives), et conseils.
Je vous joins un fichier exemple pour illustrer ce que j'ai fait et pour vous permettre de me comprendre(j'espère que cela ne sera pas trop difficile).
J'espère avoir été assez clair et je suis à votre entière disposition pour tout renseignement.
D'avance merci à ceux (celles) qui auront la gentillesse de se pencher sur mon problème. Bonne journée à toutes et tous.