Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

avis aux experts des fonctions recherches !

4 réponses
Avatar
loic
Bonjour,

Mon problème est le suivant :

1
44
5
33
6
23
les chiffres en blanc sont des variables (qui iront de 1 à 8), et je
voudrais récupérer les données correspondantes dans un tableau de type :

1 44
2
3
4
5 33
6 23
7
8


il faut donc que la fonction recherche 1(2,3,4,5,6,7,8) et renvoie la donnée
qui se trouve une ligne en dessous... comment faire léger et efficace ???

Merci de votre aide !!

4 réponses

Avatar
Kamel
essaye ca ....

Sub recherche()

Dim i As Integer
Dim c As Range

Columns("C:D").Select
Selection.ClearContents

For i = 1 To 8

Range("A1").Select
Set c = Cells.Find(What:=CStr(i), After:¬tiveCell,
LookIn:=xlValues, LookAt:= _
xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext,
MatchCase:=True _
, SearchFormat:úlse)
Range("C" & CStr(i)) = CStr(i)
If Not c Is Nothing Then
If Left(c.Address, 2) = "$A" Then
Range("D" & CStr(i)) = c.Offset(1).FormulaR1C1
End If
End If


Next i

End Sub

--
Bon courage ...
Kamel
"loic" a écrit dans le message de
news:uFnFkh%
Bonjour,

Mon problème est le suivant :

1
44
5
33
6
23
les chiffres en blanc sont des variables (qui iront de 1 à 8), et je
voudrais récupérer les données correspondantes dans un tableau de type :

1 44
2
3
4
5 33
6 23
7
8


il faut donc que la fonction recherche 1(2,3,4,5,6,7,8) et renvoie la
donnée

qui se trouve une ligne en dessous... comment faire léger et efficace ???

Merci de votre aide !!




Avatar
Philippe.R
Bonjour Loïc,
Sans VBA, avec ton tableau d'origine en A1:A20 par exemple et le tableau résultant en F1 : G8, la
formule :

=SI(ESTERREUR(INDEX(A$1:A$20;EQUIV(F1;A$1:A$20;0)+1));"";INDEX(A$1:A$20;EQUIV(F1;A$1:A$20;0)+1))

copiée en G1 fonctionne.
--
Amicales Salutations

Retirer A_S_ pour répondre.
XL97 / XL2002

"loic" a écrit dans le message de
news:uFnFkh%
Bonjour,

Mon problème est le suivant :

1
44
5
33
6
23
les chiffres en blanc sont des variables (qui iront de 1 à 8), et je
voudrais récupérer les données correspondantes dans un tableau de type :

1 44
2
3
4
5 33
6 23
7
8


il faut donc que la fonction recherche 1(2,3,4,5,6,7,8) et renvoie la donnée
qui se trouve une ligne en dessous... comment faire léger et efficace ???

Merci de votre aide !!




Avatar
ChrisV
Bonjour Loïc,

En supposant que les données se situent en A1:A6 (plage nommée ici Zn)
en B2, à recopier vers le bas

=LIGNE()&" "&SI(ESTNA(EQUIV(LIGNE();Zn;0));"";INDIRECT("A"&
1+EQUIV(LIGNE();Zn;0)))


ChrisV


"loic" a écrit dans le message de news:
uFnFkh#
Bonjour,

Mon problème est le suivant :

1
44
5
33
6
23
les chiffres en blanc sont des variables (qui iront de 1 à 8), et je
voudrais récupérer les données correspondantes dans un tableau de type :

1 44
2
3
4
5 33
6 23
7
8


il faut donc que la fonction recherche 1(2,3,4,5,6,7,8) et renvoie la
donnée

qui se trouve une ligne en dessous... comment faire léger et efficace ???

Merci de votre aide !!




Avatar
ru-th
Salut

avec les valeurs de 1 à 8 en colonne D et tes valeurs 1, 44,5,33... en
colonne A
=INDEX(A:A;EQUIV(D1;A:A;0)+1)

a+
rural thierry
Veaux et Broutards d'Anjou
Wicasa on kin nape yapi inahni yo (à l'essai)

"loic" a écrit dans le message de
news:uFnFkh%
Bonjour,

Mon problème est le suivant :

1
44
5
33
6
23
les chiffres en blanc sont des variables (qui iront de 1 à 8), et je
voudrais récupérer les données correspondantes dans un tableau de type :

1 44
2
3
4
5 33
6 23
7
8


il faut donc que la fonction recherche 1(2,3,4,5,6,7,8) et renvoie la
donnée

qui se trouve une ligne en dessous... comment faire léger et efficace ???

Merci de votre aide !!