SOMME.SI.ENS(INDIRECT(A1&"!...") sans colonne précise

Bonjour à tous,

je dois avouer que cette fois je sèche. J'ai l'habitude de chercher des heures sur les forums et liens Google, mais cette fois rien à faire.

Je vous explique mon problème :

J'utilise la fonction INDIRECT pointant vers une cellule afin d'aller chercher des données dans les onglets correspondant au nom indiqué. Cette formule prend la forme SOMME.SI.ENS(INDIRECT(A1&"!B:B") par exemple. Où j'ai la nécessité d'indiquer la colonne ou la ligne pour récupérer mes données.

Cependant, je cherche aujourd'hui à remplacer cette indication précise de colonne &"!B:B" par une référence à l'en-tête de ma colonne de données (dont le nom est le même que celle où se situe ma fonction).

Le but est que ma fonction aille chercher dans l'onglet correspondant mais aussi dans la colonne adaptée en fonction de son entête. Pour éviter d'aller chercher à la main et pour chaque variable la colonne qui lui convient (et automatiser dans le cas de nombreux onglets et nombreuses colonnes).

Si seulement quelqu'un avait une idée, ça me sauverait ! Je vous remercie d'avance de votre aide qui sera précieuse

420excel.xlsx (100.44 Ko)

Bonjour,

Si j'ai bien compris ta demande ....

1'433excel.xlsx (101.20 Ko)

Hello,

Du coup non, puisque tu utilises une plage de données précise. Ce que je souhaite faire est que la formule prenne en compte l'entête "Visites" par exemple et qu'elle soit capable de reconnaître ce même titre sur l'autre onglet pour ressortir les données de la colonne correspondante. Comme le fait déjà INDIRECT pour pointer vers un onglet concrètement. Sauf que là je cherche à récupérer également la colonne.

Re,

Ci-joint la Version 2 ...

1'931excel-v2.xlsx (101.36 Ko)

Ca semble être ça ! Sauf que je ne connais pas cette fonction ni ses tenants et aboutissants :/

Par contre j'imagine qu'il faut refaire le même travail pour les critères de la fonction SOMME.SI.ENS que pour la plage somme.

Les &2: ou &7 indiquent des numéros de lignes ?

Il n'est pas possible d'utiliser plus simplement la fonction EQUIV ou même SOMMEPROD avec INDIRECT que dans ton exemple ? Parce que depuis le départ de ce casse tête je m'étonne qu'il soit aussi simple d'utiliser INDIRECT pour indiquer un onglet mais pas de faire de même pour éviter d'avoir à situer soi-même une colonne possédant un titre...

Merci de ton aide en tout cas

Re,

Je ne comprends pas ta dernière remarque ...

C'est la fonction Equiv() qui retrouve "Visites" et "Pages vues" ...

Si tu prends le temps de décomposer la formule ... tu t'en rendras compte ...

Je me suis mal exprimé.

C'est effectivement la fonction EQUIV qui retrouve les noms des variables. Cependant, et c'est là où je voulais en venir en disant "plus simplement", te semble t-il nécessaire de la coupler avec la fonction CAR ?

De même, je ne saisis pas exactement son utilité ni comment tu l'utilises. Notamment au sujet des chiffres 64, &2: ou &7. :/

Re,

Fais un simple test avec le chiffre 5 ... pour comprendre la conversion de la fonction CAR() ...

=CAR(64+5)

Effectivement, après longue observation et réflexion, je comprends mieux l'usage de CAR couplé à EQUIV. Ca paraît logique vu comme ça.

Si je saisis bien, CAR va compter à l'aide d'EQUIV le nombre de colonnes entre le caractère 64 (@) et celui rendu par la recherche d'EQUIV (colonne 5 qui correspond à "Visites" dans A1:H1). Ce qui fait au final 64+5=69 (E). On a notre colonne à base de nos caractères. Que ce passe t-il si je dépasse 26 colonnes ? La fonction sera inopérante.

Il convient d'indiquer 64 puisqu'il est le dernier caractère avant l'alphabet qui compose le nom des colonnes. A défaut l'addition devient fausse puisqu'il n'y aura pas 5 colonnes contenant l'alphabet dans l'ordre à compter avant d'arriver à 69.

Je ne comprends par contre toujours pas l'apport de &"2:" et &"7"...

Bonjour,

J'ai l'impression que tu ne veux pas faire l'effort de décomposer la formule pour la comprendre...

Pour effectuer la somme conditionnelle ...la formule a besoin d'avoir les coordonnées des plages ... Donc les colonnes et les lignes ...

Il se trouve que ta plage cible, dans le second onglet va de la ligne 2 à la ligne 7 ...

Pas la peine d'être condescendant non plus. J'ai passé la soirée d'hier à décomposer les fonctions et à faire des tests à partir d'éléments que je n'avais jamais croisés. J'étais sur la bonne voie au final en plus.

La seule chose qui me chiffonne c'est cette limitation à 26 colonnes et l'aspect bidouillage de la fonction. Mais s'il n'existe rien d'autre alors j'ai moyennement le choix

Pour la plage cible, existe t-il une limitation ou je peux faire &"2:" à &"1000000". ?

Commençons par le Bonjour .... qui s'impose ...

Pour ton info .. j'ai trop de respect pour les gens persévérants qui cherchent à comprendre ....

pour être, comme tu le penses, "condescendant" ...

Bon Courage pour la suite ...

Bonjour,

Comment ajusté la fonction EQUIV si le nombre de colonne dépasse 26 ?

Merci

Bonjour,

désolée bast0504 je n'ai pas la réponse à votre question, ne maitrisant pas du tout cette fonction...

xtech

Je ne comprend pas... pourquoi ne pas avoir utilisé un tableau croisé dynamique directement pour calculer les sommes regroupées de votre base de données ?

Bonjour Forum

Merci Rrradassse pour ta réponse

La solution proposée par James007 correspond à mon besoin

En revanche ma base de données possède plus de 26 colonnes - Je voulais savoir si une autres alternative existait pour faire la somme d'une colonne en fonction de l'intitulé avec Indirect

Merci

Rechercher des sujets similaires à "somme ens indirect colonne precise"