|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Membre du Club
![]() ![]() Étudiant Inscription : novembre 2011 Messages : 102 ![]() |
Bonsoir à tous, étant donnée l'heure qu'il est !
Sur suggestion d'Overcrash qui s'est défilé devant la difficulté ( J'ai une feuille "résumé", d'autre feuilles inutiles dans le cas présent ainsi que des feuilles nommées par numéro "1", "2", "3"... Leur nombre (celui des feuilles numérotées) est variable. Voici le bout de code: Code :
Je me permets de souligner le fait que le nombre de feuilles numérotées est variable. (Dans mon exemple test il y en a 8.) Merci d'avance pour votre aide chers membres !
|
||
|
|
00
|
|
|
#2 |
|
Expert Confirmé Sénior
![]() ![]() |
Salut
Tu devrais exécuter ton code en mode pas à pas. C'est a dire, dans le cas présent (pas de paramètres à passer a ta fonction), tu lance ta macro a l'aide de la touche F8, un surlignage jaune va pointer la ligne qui va être exécutée. A tout moment, tu peux en survolant les différentes variables de ton code, connaitre ce qu'elles contiennent. Pour les variables objets tel que Sh, tu fais un clic droit dessus et tu sélectionnes "Ajouter un espion", une fenêtre s'ouvre tu laisse par défaut et tu valides. Une nouvelle liste devrait s'affichée contenant les espions, il est possible de "d'ouvrir" l'espion pour regarder ce qu'il contient et vois les valeurs de ses propriété, ici tu pourra regarder Name et ainsi voir au fur et à mesure de l’exécution du code (touche F8) si toute tes feuilles sont bien contrôlées et de vérifier pourquoi certaines sont ignorées. Lorsque tu utilises worksheets, sache que les feuille de type graphique sont ignorées, seule les feuille de calcul(feuille "classique") sont prisent en compte, ce qui dans ton cas ne devrait pas poser de problème particulier. Il reste donc a voir ce que IsNumeric pense des noms de tes feuilles. Tu peux également placer un espion sur isnumeric(Sh.name) en sélectionnant ce bout de code avant de faire clic le droit Bonne recherche. Ps: Vis à vis de ton autre poste, OK vis à vis la confidentialité, pas de soucis c'est normal de ne pas toujours vouloir placer l’ensemble de sont code. ++ Qwaz
__________________
MagicQwaz := Harry Potter la baguette en moins ![]() Le monde dans lequel on vit HammerFest Ma page perso DVP - Dernier Tutoriel : VBA & Internet Explorer |
|
|
10
|
|
|
#3 |
|
Membre du Club
![]() ![]() Étudiant Inscription : novembre 2011 Messages : 102 ![]() |
Salut Qwaz
J'ai utilisé le mode pas à pas (c'est génial ce truc). Le problème n'est pas dû au IsNumeric car il détecte correctement le nom de la feuille, il sort de la boucle lorsque les feuilles sont nommées en lettres. Le truc marrant dans l'histoire, c'est que ma macro effectue le traitement correctement ! Pour chaque feuille elle va chercher la plage puis la colle sur le "résumé". Elle copie les données de la feuille "1", puis celles de la feuille "2", puis celles de la feuille "3"...qu'elle colle par dessus les données de la feuille "2" ! En gros, les données des feuilles impaires sont collées par dessus les données des feuilles paires précédemment collées. Donc je me retrouve avec uniquement les données des feuilles impaires. ![]() EDIT : J'ai compris pourquoi ! Dans mes feuilles dont le nom est paire, dans ma plage H2:I23 la première ligne est vide ! (si c'est trop confus je peux fournir un fichier ou un screenshot) Comme dans mon code je demande à ma macro de chercher la première colonne vide en ligne 5, elle détecte des cellules vides donc elle colle les données suivantes par dessus! Mais comment éviter ça ? Suis-je contrainte de remplacer les cellules vides par des "-" par exemple ? |
|
|
00
|
|
|
#4 | |||
|
Membre Expert
![]() Retraité Inscription : avril 2011 Messages : 694 ![]() |
Bonjour,
Citation:
Code :
|
|||
|
|
10
|
|
|
#5 | ||
|
Membre du Club
![]() ![]() Étudiant Inscription : novembre 2011 Messages : 102 ![]() |
Salut gFZT82
Merci beaucoup, ta méthode fonctionne à merveille. J'ai d'ailleurs tenté de l'appliquer à une autre partie de mon code dont le traitement est assez similaire. Lorsque j'ai appliqué ta méthode, ma feuille résumé contient donc une plage à nombre de ligne fixe et à colonnes variables. (cf Tableau 1 du screenshot) Ensuite je souhaite couper une colonne sur 2 du tableau 1 et les coller consécutivement dans le tableau 2 (comme tu peux le voir sur le screenshot). En tentant maladroitement d'adapter ton code, voici ce que j'obtiens (et qui plante : Code :
Merci d'avance. |
||
|
|
00
|
|
|
#6 | ||
|
Membre Expert
![]() Retraité Inscription : avril 2011 Messages : 694 ![]() |
Re,
Essaie avec ce code Code :
|
||
|
|
10
|
|
|
#7 |
|
Membre du Club
![]() ![]() Étudiant Inscription : novembre 2011 Messages : 102 ![]() |
Re salut,
Entre temps j'ai fini par trouvé la même chose que ce que tu me proposes Merci beaucoup de ton aide ! ![]() Kaera* |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com