![]() |
|
Forum
|
|
|
#1 (permalink) |
|
Guest
Messages: n/a
|
Bonjour,
voici mon problème : je dois retrouver dans un tableau une ligne contenant trois paramètres rentrés par l'user dans un userform précédent. voici un fichier joint ki vous permettra d'apprecier mieux le probleme a savoir : ds mon fichier reel j'ai bcp plus de choix et il faut ke la source soit actualisable donc pas d'énumération des cas koi !! si kkun a une idee ou une solution parce que la c'est vraiment galere pour moi merci d'avance a tous ![]() |
|
| ANNONCES | |||
|
|
|
|
#2 (permalink) |
|
Guest
Messages: n/a
|
'lancer l'outils filtre automatique sur ton tableau
If Not ton_tab.range('A1').AutoFilter Then ton_tab.range('A1').AutoFilter 'OPTIONNEL si tes noms de colonnes changent 'recherche de la colonne correspondant au premier critère de ton userform range('A1').Select range(Selection, Selection.End(xlToRight)).Select Selection.Find(What:='nomdemacolonne', After:=ActiveCell, LookIn:=xlFormulas _ , LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _ MatchCase:=False).Activate 'récupération du numéro de la colonne correspondante li_numcol1 = ActiveCell.Column 'tu refais la manip pour les 2 autres critères 'donc tu récupère l'index de tes 3 colonnes li_numcol1 li_numcol2 li_numcol3 ton_tab.range('A1').AutoFilter Field:=li_numcol1, Criteria1:='' & zoneform1.Value ,Field:=li_numcol2, Criteria1:='' & zoneform2.value,Field:=li_numcol3, Criteria1:='' & zoneform2.value 'SI TES NOMS NE CHANGENT JAMAIS 'et bien tu repères les numéros de colonnes concernés par le filtre puis ton_tab.range('A1').AutoFilter Field:=index1, Criteria1:='' & zoneform1.Value ,Field:=index2, Criteria1:='' & zoneform2.value,Field:=index3, Criteria1:='' & zoneform2.value 'a partir de là tu as un zoli filtre avec entête + ta fameuse ligne pour la récupérer la façon la plus simple (du moins sur Excel 2000) et qui marche à tous les coups en effet avec l'option Cellulesvisible l'option resize de marche pas, enfin moi j'ai des messages d'erreur à tous les coups 'sélection du résultat du filtre = sélection des cellules visibles range('A1').Select Selection.CurrentRegion.Select Selection.SpecialCells(xlCellTypeVisible).Select 'tu copies /colles dans une nouvelle feuille et tu récupères les lignes sans la ligne de titre Selection.Copy etc... voilou j'espère que ça t'aidera Deedo Message édité par: deedo, à: 13/07/2005 16:01 |
|
![]() |
| Liens sociaux |
| Outils de la discussion | |
|
|