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

Trouver une valeur dans une ligne, partant de la fin

1 réponse
Avatar
Jean-Luc GARNIER
Bonjour,

J'ai deux petites questions portant sur les fonctions de=20
recherche:
1- j'utilise la formule suivant : RECHERCHE
("p";AH46:DL46;$AH$1:$DL$1), pour trouver dans une ligne=20
la case contenant "P" et en d=E9duire (par lecture de la=20
1=E8re ligne, AH1:DL1) un n=B0 de semaine. Cela semble=20
marcher, le sens de recherche est croissant sur le vecteur=20
de recherche. Mais je souhaite maintenant trouver LA=20
DERNIERE case contenant "P" ! Comment indiquer =E0 RECHERCHE=20
de travailler dans le sens d=E9croissant, c'est =E0 dire de DL=20
vers AH ?

2- question corollaire: cela marche en recherchant une=20
valeur connue. Comment transformer ceci pour retrouver une=20
valeur quelconque, c'est =E0 dire la premi=E8re (ou la=20
derni=E8re) cellule non vide ?

Merci d'avance pour votre aide !

Jean-Luc

1 réponse

Avatar
Bourby
bonjour,

pour une recherche en colonne, exemples à adapter:

-question 1:
dans une macro
maLigne=Range("Feuil1!A1:A3000").Find("p", , , , , xlPrevious).row

- question 2:
=MAX(SI(NON(ESTVIDE(A1:A1000));LIGNE(A1:A1000)))
puis utiliser la fonction INDIRECT avec ce n° de ligne.

ou dans une macro:
DerniereLigne = Range("a65536").End(xlUp).Row


cordialement

Bourby


"Jean-Luc GARNIER" a écrit dans le
message news: 199a901c44d3c$17fcb370$
Bonjour,

J'ai deux petites questions portant sur les fonctions de
recherche:
1- j'utilise la formule suivant : RECHERCHE
("p";AH46:DL46;$AH$1:$DL$1), pour trouver dans une ligne
la case contenant "P" et en déduire (par lecture de la
1ère ligne, AH1:DL1) un n° de semaine. Cela semble
marcher, le sens de recherche est croissant sur le vecteur
de recherche. Mais je souhaite maintenant trouver LA
DERNIERE case contenant "P" ! Comment indiquer à RECHERCHE
de travailler dans le sens décroissant, c'est à dire de DL
vers AH ?

2- question corollaire: cela marche en recherchant une
valeur connue. Comment transformer ceci pour retrouver une
valeur quelconque, c'est à dire la première (ou la
dernière) cellule non vide ?

Merci d'avance pour votre aide !

Jean-Luc