Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Recherche .. simple?

K

Kiko974

Guest
Bonjour à tous!

Je bataille ferme depuis quelques heures sur, à mon avis, un problème pas bien sorcier!

J'ai un tableau:

A B C D E F
5
9


Le nombre de lignes et colonnes peut être très grand.

Je désire trouver et paraméterer la bonne fonction qui me permette de:

- renvoyer dans une cellule résultat, pour chaque ligne, le nom de la colonne qui contient une valeur différente de 0 (ou vide).

C'est à dire que:

- pour la première ligne, j'obtiendrai B,
- pour la seconde ligne, j'obtiendrai D.


Avez-vous une idée sur la question ??

Merci pour tout !
 
K

Kiko974

Guest
Problème de mise en page, désolé:

Première ligne, lire: A B C D E et F
Seconde ligne, lire: rien 5 rien rien rien et rien
troisième ligne, lire: rien rien rien 9 rien et rien
 
C

C@thy

Guest
Simple, tu dis, j'hallucine...

je me suis bien cassé la tête, mais maintenant c'est simple pour toi en regardant cet exemple.

C@thy
 

Pièces jointes

  • kiko.ZIP
    2.1 KB · Affichages: 19
J

Jean-Marie

Guest
Bonsoir Cathy, Kiko

Une autre solution, avec une fonction que Monique m'a fait découvrir SOMMEPROD, elle est aussi à l'origine de beaucoup d'autres.

=SOMMEPROD(COLONNE(A1:I1)*NON(ESTVIDE(A1:I1)))

Cette fonction retourne le numéro de la colonne, associée au fonction ADRESSE et STXT(;;NBCAR()-1), on retrouve le nom de la colonne.

=ADRESSE(1;Résultat de la 1ère fonction;4;VRAI)
=STXT(Résultat de la 2ème formule;1;NBCAR(Résultat de la 2ème formule)-1)

La version complète :

=STXT(ADRESSE(1;SOMMEPROD(COLONNE(A1:I1)*NON(ESTVIDE(A1:I1)));4;VRAI);1;NBCAR(ADRESSE(1;SOMMEPROD(COLONNE(A1:I1)*NON(ESTVIDE(A1:I1)));4;VRAI))-1)

Il est préférable d'utiliser STXT(;;NBCAR()-1), c'est plus long mais dans le cas ou la colonne trouvée est après la Z, la fonction GAUCHE ne sais pas faire.

Bonne soirée

@+Jean-Marie
 
K

kiko974

Guest
Salut!

Tout d'abord je tiens à vous remercier pour votre réactivité et dire que je suis impressioné par tous ces calculs savants ;o)

J'ai cogité depuis tout à l'heure et finalement, la solution beaucoup plus simple qui est la suivante je pense me conviendra:

=RECHERCHE(SOMME(A2:F2);A2:F2;A1:F1))

Qu'en pensez-vous?

Merci encore.
 
J

Jean-Marie

Guest
Bonjour, Cathy, Kiko

Une précision concernant ma solution proposée avec sommeprod, cette fonction ne marche pas si plusieurs cellules sont remplies sur une même ligne.

Bonne journée

@+Jean-Marie
 
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…