OVH Cloud OVH Cloud

Recherche valeur dans un tableau

19 réponses
Avatar
FREDSCOPE
Bonsoir =C3=A0 tous.=20

Je suis =C3=A0 la recherche d=E2=80=99une formule permettant de chercher un=
e valeur dans un tableau =C3=A0 double entr=C3=A9e. La feuille est aliment=
=C3=A9e r=C3=A9guli=C3=A8rement sans que le nombre de sections analytiques =
soit fixe. Le nombre de ligne est fixe.=20

En lignes : les comptes comptables=20
En colonnes : les sections analytiques. Le nombre de section est variable e=
n fonction de chaque extraction.=20
A l=E2=80=99intersection des lignes et des colonnes la valeur correspondant=
=C3=A0 la valeur affect=C3=A9e =C3=A0 chaque compte pour une section donn=
=C3=A9e.=20

Dans une autre feuille, on saisit en B1 le compte comptable et en B2, la se=
ction analytique.=20

Je souhaite renvoyer en B3 la valeur renvoy=C3=A9e =C3=A0 l=E2=80=99interse=
ction des lignes et colonnes en crit=C3=A8res.=20

J=E2=80=99ai essay=C3=A9 de travailler avec les fonctions =C3=89QUIV et IND=
EX mais je n=E2=80=99arrive pas =C3=A0 retrouver la position de la colonne =
de la section analytique.=20

Je s=C3=A8che compl=C3=A8tement. Je souhaite utiliser une fonction Excel sa=
ns VBA.=20

Si quelqu=E2=80=99un pouvait me donner une piste sur les fonctions Excel =
=C3=A0 utiliser.=20

Merci d=E2=80=99avance.=20

Fred

9 réponses

1 2
Avatar
MichD
Le 15/05/20 à 06:22, MichD a écrit :
Le 14/05/20 à 22:16, FREDSCOPE a écrit :
Bonjour,
La formule proposée par Michel fonctionne à merveille. Les
utilisateurs utilisent cette nouvelle fonction tous les jours ou
presque mais ils en veulent toujours plus ;) Ils me demandent s’il
serait possible d’adapter la formule afin qu’en saisissant la section
analytique 78* dans le critère de sélection que la formule renvoie la
somme de toutes les sections 78* pour le compte saisi en deuxième
critère.
J’ai essayé de modifier la formule en insérant un somme.si mais ca ne
fonctionne pas.
Merci pour votre aide, si vous avez une piste.

Essaie ceci :
=SIERREUR(SOMME(DECALER(Feuil1!$A$1;;EQUIV($A$1;Feuil1!1:1;0)-1;NBVAL(Feuil1!A:A)));"")
MichD

Si tu désires combiner les 2 formules,
Adapte "Sect78" par le texte de la cellule A1 de la feuil2
=SIERREUR(SI(A1="Sect78";SOMME(DECALER(Feuil1!$A$1;;EQUIV($A$1;Feuil1!1:1;0)-1;NBVAL(Feuil1!A:A)));DECALER(Feuil1!$A$1;EQUIV($A$2;Feuil1!A1:A10000;0)-1;EQUIV($A$1;Feuil1!A1:AA1;0)-1;1;));"")
MichD
Avatar
MichD
Oups, utilise cette formule, elle tient compte des modifications que tu
as apporté à ma formule...
=SIERREUR(SI(A1="Sect78";SOMME(DECALER(Feuil1!$A$1;;EQUIV($A$1;Feuil1!1:1;0)-1;NBVAL(Feuil1!A:A)));DECALER(Feuil1!$A$1;EQUIV($A$2;Feuil1!A:A;0)-1;EQUIV($A$1;Feuil1!1:1;0)-1;1;));"")
MichD
Avatar
FREDSCOPE
Mon message est parti trop vite. Il n’y a jamais de section «  section78 » ou en tout cas ça ne pourra pas être saisi de cette façon.
Avatar
MichD
Bonjour,
Voir fichier exemple : https://www.cjoint.com/c/JEql7xiPTM8
MichD
Avatar
MichD
Le 16/05/20 à 08:01, MichD a écrit :
Bonjour,
Voir fichier exemple : https://www.cjoint.com/c/JEql7xiPTM8
MichD

Le même fichier, mais avec une formule plus générique s'adaptant à la
plage de données.
https://www.cjoint.com/c/JEqmSeua47j
MichD
Avatar
Michel__D
Bonjour,
Le 15/05/2020 à 04:16, FREDSCOPE a écrit :
Bonjour,
La formule proposée par Michel fonctionne à merveille. Les utilisateurs utilisent cette nouvelle fonction tous les jours ou presque mais ils en veulent toujours plus ;) Ils me demandent s’il serait possible d’adapter la formule afin qu’en saisissant la section analytique 78* dans le critère de sélection que la formule renvoie la somme de toutes les sections 78* pour le compte saisi en deuxième critère.
J’ai essayé de modifier la formule en insérant un somme.si mais ca ne fonctionne pas.
Merci pour votre aide, si vous avez une piste.

Voici ma proposition (formule matricielle) :
=SOMME((GAUCHE(DECALER(Feuil1!$A$1;0;1;1;NBVAL(Feuil1!1:1));2) &
"*"=$B$2)*(DECALER(Feuil1!$A$1;EQUIV($B$1;Feuil1!A:A)-1;1;1;NBVAL(Feuil1!1:1))))
Avatar
FREDSCOPE
Merci Michel,
Ca correspond parfaitement à la demande des utilisateurs.
Je ne maîtrise absolument pas les formules matricielles. Je vais mixer les deux formules afin d’obtenir le résultat escompté en fonction que l’utilisateur indique la section exacte ou bien un se ction générique avec une étoile.
Je suis très impressionné par ta maîtrise exceptionnelle.
De nouveau un grand merci.
Avatar
MichD
Le 16/05/20 à 13:12, FREDSCOPE a écrit :
Merci Michel,
Ca correspond parfaitement à la demande des utilisateurs.
Je ne maîtrise absolument pas les formules matricielles. Je vais mixer les deux formules afin d’obtenir le résultat escompté en fonction que l’utilisateur indique la section exacte ou bien un section générique avec une étoile.
Je suis très impressionné par ta maîtrise exceptionnelle.
De nouveau un grand merci.

En supplément, au lieu d'inscrire le critère "78" dans la formule, tu
veux utiliser la cellule A1, tu peux faire comme ceci:
=SOMME(SI((STXT(Feuil1!1:1;1;2)=TEXTE(A1;"@"))=VRAI;PLAGE))
Comme la fonction Stxt() retourne une chaîne de caractère, par
conséquent du texte même si le résultat est numérique, il faut comparer
ce résultat à une autre chaîne texte d'où : TEXTE(A1;"@")
MichD
Avatar
FREDSCOPE
Merci Michel,
Je vais peaufiner tout cela. Je pense que j’ai plus que le néc essaire pour arriver à ce que veulent les utilisateurs.
De nouveau un grand merci pour le temps que tu as pu consacrer à mon p roblème.
Bonne soirée.
1 2