Il y a quelques temps, en effectuant une recherche sur le forum, je suis tombé sur ce fil avec cette formule :
Code : Tout sélectionner
=INDIRECT(ADRESSE(MAX((DECALER(tableau;0;MAX((tableau<>"")*COLONNE(tableau))-MIN(COLONNE(DECALER(tableau;0;0;1;1)));;1)<>"")*LIGNE(tableau));MAX((tableau<>"")*COLONNE(tableau))))J'ai voulu comprendre le fonctionnement de cette formule et j'ai donc entrepris de la "démonter".
Hé oui, je suis comme ça, non content d'avoir l'heure il faut que je démonte la montre....
Mais pourquoi diable tous ces calculs portant sur les numéros de colonne alors qu'on a qu'une seule colonne et qu'on cherche un numéro de ligne ?
J' en ai déduis que la formule est plus générale et permet de rechercher sur un tableau et non sur une colonne unique.
Ce que le démontage m'a confirmé.
1_ Concernant la recherche sur un Tableau, j'ai supprimé un petit bout de la formule que j'estime inutile (voir fichier joint Feuille3 2°)
A me confirmer, ou infirmer éventuellement.
ce qui nous donne :
Code : Tout sélectionner
=INDIRECT(ADRESSE(MAX((DECALER(tableau;0;MAX((tableau<>"")*COLONNE(tableau))-MIN(COLONNE(tableau));;1)<>"")*LIGNE(tableau));MAX((tableau<>"")*COLONNE(tableau))))Code : Tout sélectionner
=INDIRECT(ADRESSE(MAX((plage<>"")*LIGNE(plage));COLONNE(plage)))Si je reçois une facture pour du Doliprane, c'est que j'aurais échoué. Certains utilisent le fait que :
Ce qui nous donne :l'aide F1 a écrit :Si la fonction RECHERCHE ne trouve pas le critère de recherche, elle renvoie la valeur la plus grande (inférieure ou égale au critère de recherche) trouvée dans le vecteur de recherche.
Code : Tout sélectionner
=RECHERCHE(9^9^9;plage)Si à la place des données numériques la plage contient des données texte, on remplace 9^9^9 par "zzz".
N'étant pas sur à 100% du bon fonctionnement de RECHERCHE sur une plage non triée, je n'utilise pas cette formule.
Je ne traite pas cette fonction dans le fichier joint.
A+
