Fonction COLONNE() dans RECHERCHEV()

Clark

XLDnaute Junior
Bonjour,

J'ai un tableau contenant 12 colonnes mois
Pour le remplir, j'utilise dans chaque cellule une fonction RechercheV qui va chercher dans un autre onglet la donnée à afficher.

La formule est la même pour toutes les colonnes hormis l'indice de la colonne à récupérer qui change selon le mois concerné.

Ex :
= RechercheV(B2;AA1:AL100;1)
= RechercheV(B2;AA1:AL100;2)
...
= RechercheV(B2;AA1:AL100;11)
= RechercheV(B2;AA1:AL100;12)

Pour limiter le nombre de formule (surtout pour la maintenance), j'ai mis en place les formules nommées (pas sûr du nom), c'est-à-dire que j'ai ma formule dans une cellule (sans le =)
J'insère un nom (ex Formule1) faisant réference à une formule générique.
Ensuite, dans chaque ligne, je n'ai plus qu'à faire =Formule1 et tout se calcule automatiquement.
Si je dois modifier ma formule, je ne le fais qu'une fois et c'est très pratique.

Cela marche donc très bien mais pour une seule colonne Mois
Car pour les autres mois, je dois modifier l'indice (voir exemple RechercheV) et je ne trouve pas de fonction générique pour le faire.
J'ai bien essayé avec Colonne pour avoir :
RechercheV(B2;AA1;AL100;COLONNE()) mais cela ne fonctionne pas je récupère un #REF
Pourtant COLONNE renvoi bien un entier

Avez-vous une idée qui me permettrait de faire cela? Est-ce qu'il faut ajouter quelque chose à la fonction COLONNE()?

Merci pour votre attention.
Clark :)
 

Tibo

XLDnaute Barbatruc
Re : Fonction COLONNE() dans RECHERCHEV()

Bonjour,

Sans voir ton fichier, pas évident d'apporter une réponse précise et adaptée.

Il y a peut-être un problème de références relatives / absolues

Essaye en adaptant la formule ainsi :

Code:
=RECHERCHEV([COLOR=red][B]$[/B][/COLOR]B2;[B][COLOR=red]$[/COLOR][/B]AA[COLOR=red][B]$[/B][/COLOR]1;[COLOR=red][B]$[/B][/COLOR]AL[COLOR=red][B]$[/B][/COLOR]100;COLONNE())

Si pas ça, reviens avec un extrait de ton fichier (anonymisé et commenté)

@+
 

Clark

XLDnaute Junior
Re : Fonction COLONNE() dans RECHERCHEV()

J'ajoute un fichier exemple, ce sera peut-être plus clair ainsi.

Dans ce fichier, j'ai donc le 1er tableau qui affiche les résultats et le 2nd qui contient les données.

La formule utilisée est en O3.
J'ai inséré un nom "Formule1" faisant référence à cette même formule

Ensuite, dans chaque cellule du premier tableau, je fais =Formule1 pour appeler cette formule qui doit s'adapter à chaque cellule.
Mais comme vous pouvez le voir, étant donné qu'il y a 13 comme indice, en dur dans la formule, seule la dernière colonne est bonne.
Je cherche donc à remplacer ce 13 par une fonction ou autre, permettant à la formule de s'adapter quelque soit la cellule qui l'appelle.

C'est pour cela que j'avais essayé plusieurs solutions avec Colonne() mais cela ne fonctionne pas.

J'aimerai éviter d'avoir 12 fois la même formule avec uniquement un indice qui change.

Clark :)
 

Pièces jointes

  • Exemple.xls
    16.5 KB · Affichages: 250
  • Exemple.xls
    16.5 KB · Affichages: 270
  • Exemple.xls
    16.5 KB · Affichages: 270

Clark

XLDnaute Junior
Re : Fonction COLONNE() dans RECHERCHEV()

Tibo,Boisgontier,

j'étais justement entrain de faire un fichier exemple car en me relisant, c'est vrai que ce n'est pas évident de comprendre le problème.

Iintéressante cette formule, mais dans mon cas, je ne recopie pas la formule mais uniquement l'appel à la formule nommée donc on aura toujours COLONNES($A:B)
 

Statistiques des forums

Discussions
312 302
Messages
2 087 035
Membres
103 436
dernier inscrit
PascalH