Macro recherche plusieurs critères cellule
Résolu/Fermé
A voir également:
- Macro recherche plusieurs critères cellule
- Recherche musique - Guide
- Macro logiciel - Télécharger - Organisation
- Macro word - Guide
- Google recherche par image - Guide
- Verrouiller cellule excel - Guide
8 réponses
eriiic
Messages postés
24569
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
14 mars 2024
7 209
5 févr. 2011 à 00:23
5 févr. 2011 à 00:23
Bonsoir,
Tu ne précises pas si tu veux les références ou un filtre...
Une proposition de filtre dynamique :
Filtre multiple.xls
eric
Tu ne précises pas si tu veux les références ou un filtre...
Une proposition de filtre dynamique :
Filtre multiple.xls
eric
Bonjour,
je sais pas si c'est exactement ce que tu veux mais voila une piste :
un conseil appuie sur F8 (ca déclenche le code ligne par ligne) et pose ta souris sans cliquer sur cellule pour bien comprendre ce que cela fait
Sub x()
texte = InputBox("Merci d'indiquer le texte recherché :", "texte recherché") ' permet à l'utilisateur de rentrer ce que tu cherches
If texte <> "" Then 'si tu n'as rien rentré, la macro s'arrête
i = 2 ' commence à la 2ème ligne
Do While Cells(i, 1) <> "" 'la boucle tourne jusqu'à ce que tu n'ais rien dans une cellule de la colonne A
nbtexte = Len(texte) 'nbtexte = nbre de caractères du texte recheché
cellule = Cells(i, 1) 'cellule est égale à la valeur contenue dans ta cellule
Do While Len(cellule) > 0
If UCase(Left(cellule, nbtexte)) = UCase(texte) Then
'mets ici ce que ca doit faire lorsque tu as trouvé ton texte
cellule = "a"
End If
cellule = Right(cellule, Len(cellule) - 1)
Loop
i = i + 1
Loop
End If
End Sub
je sais pas si c'est exactement ce que tu veux mais voila une piste :
un conseil appuie sur F8 (ca déclenche le code ligne par ligne) et pose ta souris sans cliquer sur cellule pour bien comprendre ce que cela fait
Sub x()
texte = InputBox("Merci d'indiquer le texte recherché :", "texte recherché") ' permet à l'utilisateur de rentrer ce que tu cherches
If texte <> "" Then 'si tu n'as rien rentré, la macro s'arrête
i = 2 ' commence à la 2ème ligne
Do While Cells(i, 1) <> "" 'la boucle tourne jusqu'à ce que tu n'ais rien dans une cellule de la colonne A
nbtexte = Len(texte) 'nbtexte = nbre de caractères du texte recheché
cellule = Cells(i, 1) 'cellule est égale à la valeur contenue dans ta cellule
Do While Len(cellule) > 0
If UCase(Left(cellule, nbtexte)) = UCase(texte) Then
'mets ici ce que ca doit faire lorsque tu as trouvé ton texte
cellule = "a"
End If
cellule = Right(cellule, Len(cellule) - 1)
Loop
i = i + 1
Loop
End If
End Sub
ccm81
Messages postés
10850
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
27 mars 2024
2 403
3 févr. 2011 à 14:44
3 févr. 2011 à 14:44
bonjour
upeut etre quelque chose comme ça
RQ. attention a la casse, sinon Ucase transforme en majuscule
bonne suite
upeut etre quelque chose comme ça
For li = 21 To 24 a = InStr(1, Cells(li, 1), "Italie") b = InStr(1, Cells(li, 1), "133") If a * b > 0 Then MsgBox ("trouvé" & " - " & li) End If Next li
RQ. attention a la casse, sinon Ucase transforme en majuscule
bonne suite
Bonjour,
mais la fonction ucase permet de transformer en majuscule, comme ca ca permet de comparer deux textes identiques et pas de problème d'accent.
de plus, ton code ne permet la recherche que de italie 133 alors que le mien, tu peux rechercher n'importe quel texte.
mais la fonction ucase permet de transformer en majuscule, comme ca ca permet de comparer deux textes identiques et pas de problème d'accent.
de plus, ton code ne permet la recherche que de italie 133 alors que le mien, tu peux rechercher n'importe quel texte.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
ccm81
Messages postés
10850
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
27 mars 2024
2 403
Modifié par ccm81 le 4/02/2011 à 21:33
Modifié par ccm81 le 4/02/2011 à 21:33
> melanie
tu as tout a fait raison, je voulais suggerer une idée pour repondre simplement a la question posée
mais
le texte cherché est une partie du contenu de la cellule, donc instr s'impose.
bonne journée
tu as tout a fait raison, je voulais suggerer une idée pour repondre simplement a la question posée
mais
le texte cherché est une partie du contenu de la cellule, donc instr s'impose.
bonne journée
Mike-31
Messages postés
18309
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
14 mars 2024
5 072
4 févr. 2011 à 23:18
4 févr. 2011 à 23:18
Salut,
dans la cellule tu as ce type de donnée, exemple en A1 tu as Italie Rome 133 !
si oui, et si je comprends bien dans la colonne A tu as plusieurs données identiques Italie Rome 133 ou sont elles différentes comme Italie 133 !
dans la cellule tu as ce type de donnée, exemple en A1 tu as Italie Rome 133 !
si oui, et si je comprends bien dans la colonne A tu as plusieurs données identiques Italie Rome 133 ou sont elles différentes comme Italie 133 !
ccm81
Messages postés
10850
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
27 mars 2024
2 403
5 févr. 2011 à 09:33
5 févr. 2011 à 09:33
bonjour mike-31
c'est ce que j'ai compris, c'est pour ça que j'ai propose instr dans le post 2
bonne suite
c'est ce que j'ai compris, c'est pour ça que j'ai propose instr dans le post 2
bonne suite
5 févr. 2011 à 11:40
Comment as tu fait ce fitre dynamique c'est exactement ce que je voulais!!!
5 févr. 2011 à 11:51
En vba, clic-droit sur le nom de l'onglet de la feuille et 'visualiser le code...'
eric