OVH Cloud OVH Cloud

Find multicritère

4 réponses
Avatar
francois63000
Bonjour à tous.

est -il possible avec la fonction FIND, de rechercher sur plusieurs critère?

En faite j'ai un tableau comme suit

aa 11
aa 22
aa 33
bb 11
bb 22
bb 33
bb 44


Je voudrai ( si cela est possible bien sur) que quand je rentre le critère
aa et le critère 22, la cellule qui correspond à ces 2 critère soit
sélectionnée

Merci de me dire si c'est possible et éventuellement me dire comment faire

Merci d'avance

4 réponses

Avatar
JB
Bonjour,

Nom de champ: code1 et code2:

Sub FindMultiCritères()
cd1 = "AA6495"
cd2 = "7605"
p = Evaluate("Match(""" & cd1 & "@" & cd2 & """, code1 & ""@"" &
code2, 0)")
If Not IsError(p) Then
Range("code1")(1).Offset(p - 1).Select
Else
MsgBox "inconnu"
End If
End Sub

Sub FindMultiCritères()
cd1 = "AA6495"
cd2 = "7605"
p = Evaluate("Match(""" & cd1 & "@" & cd2 & """, code1 & ""@"" &
code2, 0)")
If Not IsError(p) Then
Range("code1")(1).Offset(p - 1).Select
Else
MsgBox "inconnu"
End If
End Sub

http://cjoint.com/?cqoUNB1QZb

Cordialement jb


On 16 fév, 13:25, francois63000
wrote:
Bonjour à tous.

est -il possible avec la fonction FIND, de rechercher sur plusieurs crit ère?

En faite j'ai un tableau comme suit

aa 11
aa 22
aa 33
bb 11
bb 22
bb 33
bb 44

Je voudrai ( si cela est possible bien sur) que quand je rentre le crit ère
aa et le critère 22, la cellule qui correspond à ces 2 critère soit
sélectionnée

Merci de me dire si c'est possible et éventuellement me dire comment fa ire

Merci d'avance


Avatar
Jacky
Bonjour,
Avec un filtre
'---------
Sub jj()
Application.ScreenUpdating = False
[a1].AutoFilter Field:=1, Criteria1:="aa"
[a1].AutoFilter Field:=2, Criteria1:="22"
Range("a2", [b65536].End(3)).SpecialCells(xlCellTypeVisible).Select
[a1].AutoFilter
End Sub
'---------
--
Salutations
JJ


"francois63000" a écrit dans le
message de news:
Bonjour à tous.

est -il possible avec la fonction FIND, de rechercher sur plusieurs
critère?

En faite j'ai un tableau comme suit

aa 11
aa 22
aa 33
bb 11
bb 22
bb 33
bb 44


Je voudrai ( si cela est possible bien sur) que quand je rentre le critère
aa et le critère 22, la cellule qui correspond à ces 2 critère soit
sélectionnée

Merci de me dire si c'est possible et éventuellement me dire comment faire

Merci d'avance



Avatar
JB
0,07 s pour 50.000 éléments

Sub FindMultiCritères()
cd1 = "AA42311"
cd2 = "43421"
Set champ = [code1]
Set c = champ.Find(cd1, LookIn:=xlValues, LookAt:=xlWhole)
If Not c Is Nothing Then
premier = c.Address
Range("code2")(c.Row - [code1].Row + 1).Select
Do
Union(Selection, Range("code2")(c.Row - [code1].Row + 1)).Select
Set c = champ.FindNext(c)
Loop While Not c Is Nothing And c.Address <> premier
End If
'-- recherche cd2
Set c = Selection.Find(cd2, LookIn:=xlValues, LookAt:=xlWhole)
If Not c Is Nothing Then c.Select Else MsgBox "non trouvé"
End Sub

http://boisgontierj.free.fr/fichiers/Find2Criteres.zip

JB

On 16 fév, 13:25, francois63000
wrote:
Bonjour à tous.

est -il possible avec la fonction FIND, de rechercher sur plusieurs crit ère?

En faite j'ai un tableau comme suit

aa 11
aa 22
aa 33
bb 11
bb 22
bb 33
bb 44

Je voudrai ( si cela est possible bien sur) que quand je rentre le crit ère
aa et le critère 22, la cellule qui correspond à ces 2 critère soit
sélectionnée

Merci de me dire si c'est possible et éventuellement me dire comment fa ire

Merci d'avance


Avatar
Jacky
Re.
0.078125 Sec. avec le filtre, également 50.000 éléments
Mais, cela dépendra aussi du PC, n'est-il pas ;-))

--
Salutations
JJ


"JB" a écrit dans le message de news:

0,07 s pour 50.000 éléments

Sub FindMultiCritères()
cd1 = "AA42311"
cd2 = "43421"
Set champ = [code1]
Set c = champ.Find(cd1, LookIn:=xlValues, LookAt:=xlWhole)
If Not c Is Nothing Then
premier = c.Address
Range("code2")(c.Row - [code1].Row + 1).Select
Do
Union(Selection, Range("code2")(c.Row - [code1].Row + 1)).Select
Set c = champ.FindNext(c)
Loop While Not c Is Nothing And c.Address <> premier
End If
'-- recherche cd2
Set c = Selection.Find(cd2, LookIn:=xlValues, LookAt:=xlWhole)
If Not c Is Nothing Then c.Select Else MsgBox "non trouvé"
End Sub

http://boisgontierj.free.fr/fichiers/Find2Criteres.zip

JB

On 16 fév, 13:25, francois63000
wrote:
Bonjour à tous.

est -il possible avec la fonction FIND, de rechercher sur plusieurs
critère?

En faite j'ai un tableau comme suit

aa 11
aa 22
aa 33
bb 11
bb 22
bb 33
bb 44

Je voudrai ( si cela est possible bien sur) que quand je rentre le critère
aa et le critère 22, la cellule qui correspond à ces 2 critère soit
sélectionnée

Merci de me dire si c'est possible et éventuellement me dire comment faire

Merci d'avance