|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Inscription : novembre 2011 Messages : 3 ![]() |
Bonjour,
Je désire faire une macro dont le but est d'aller extraire certaines données d'une feuille pour les mettre dans une autre...mais j'ai vraiment besoin de faire dans la dentelle... explications : J'ai un doc de base en feuille 1 que nous appelerons "Export" Dans cet export j'ai une colonne qui contient des informations cellule par cellule. On peut dire que j'ai des blocs de ligne, chacun de ces blocs étant délimités par un titre sur fond gris. Sous le titre sur fond gris, j'ai une cellule sur fond jaune "ACTIFS SUR 2" puis en dessous des cellules remplies de texte dont le nombre peut varier puis une autre cellule sur fond jaune "EXCLUSIFS CHANTEL.FR" puis des cellules de texte puis une dernière celllule sur fond jaune "EXCLUSIFS CHANTEL" avec en-dessous d'autres cellules avec texte... Enfin de nouveau un titre sur fond gris etc... Exemple : TITRE ACTIF SUR 2 MARQUE 1 MARQUE 2 MARQUE 3 MARQUE 4 MARQUE 5 EXCLUSIFS CHANTEL.FR MARQUE 6 MARQUE 7 MARQUE 8 MARQUE 9 MARQUE 10 MARQUE 11 EXCLUSIFS CHANTEL MARQUE 12 MARQUE 13 MARQUE 14 MARQUE 15 MARQUE 16 TITRE 2 ACTIF SUR 2 MARQUE 17 MARQUE 18 MARQUE 19 EXCLUSIFS CHANTEL.FR MARQUE 20 MARQUE 21 MARQUE 22 MARQUE 23 EXCLUSIFS CHANTEL MARQUE 24 MARQUE 25 MARQUE 26 Objectif : Faire apparaître dans une nouvelle feuille toutes les "Marques" "ACTIFS SUR 2" en gardant le "TITRE" de chacunes. Exemple de résultat : TITRE MARQUE 1 MARQUE 2 MARQUE 3 MARQUE 4 MARQUE 5 TITRE 2 MARQUE 17 MARQUE 18 MARQUE 19 Voici le programme VBA que j'ai commencé à écrire : Code :
TITRE MARQUE 1 MARQUE 2 MARQUE 3 MARQUE 4 MARQUE 5 Auriez-vous une idée pour que je puisse faire en sorte que ce programme s'applique à toute la colonne et ne s'arrete pas uniquement au premier bloc de ligne ?? Quelques idées que j'avais : le tableau pouvant varier de taille, je comptais utliser un CurrentRegion au lieu de mon Range("B4:B37") et je comptais peut-être utliser le fait que mes titres soient sur fond gris pour pouvoir les identifier plus facilement... Enfin, j'ai cette idée mais je ne sais pas le faire d'où mon HELPPPPPPP à vous, gentils développeurs Merci d'avance à ceux qui voudront bien m'aider!! |
||
|
|
00
|
|
|
#2 | ||
|
Membre Expert
![]() Retraité Inscription : avril 2011 Messages : 692 ![]() |
Bonjour Poulette44,
Voici une solution qui prend en compte la couleur GRIS du remplissage de la cellule qui contient le TITRE. Il te faut l’adapter en fonction des paramètres exacts de ce remplissage. Tu peux les relever en utilisant l’enregistreur de macro. Note bien que cette procédure ne fonctionne que si la structure des données est bien celle que tu as indiquée, à savoir alternance de TITRE, ACTIF puis EXCLUSIF. Code :
|
||
|
|
10
|
|
|
#3 |
|
Invité de passage
![]() Inscription : novembre 2011 Messages : 3 ![]() |
Magnifique!!
Vraiment merci beaucoup Et merci pour la rapidité de ta réponse!! Juste une dernière question en copiant le titre sur la nouvelle feuille, est-ce possible de copier également le fond gris et la police en gras ? |
|
|
00
|
|
|
#4 | ||
|
Membre Expert
![]() Retraité Inscription : avril 2011 Messages : 692 ![]() |
Il suffit de remplacer cette partie
Code :
![]() Cordialement. |
||
|
|
10
|
|
|
#5 |
|
Invité de passage
![]() Inscription : novembre 2011 Messages : 3 ![]() |
C'est Top!! Tout fonctionne parfaitement
Sincèrement Mille Mercis pour ton aide, je n'y serais jamais arrivée toute seule! |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com