Fonction SI résultat d'un filtre

Résolu/Fermé
bacflippe Messages postés 62 Date d'inscription mardi 29 juillet 2008 Statut Membre Dernière intervention 9 octobre 2023 - Modifié le 4 janv. 2022 à 00:19
bacflippe Messages postés 62 Date d'inscription mardi 29 juillet 2008 Statut Membre Dernière intervention 9 octobre 2023 - 5 janv. 2022 à 12:28
Bonjour,
Tout d'abord meilleurs voeux pour cette année !
Après moultes recherches et quelques tentatives infructueuses je viens vous demander de l'aide.
Je souhaiterais obtenir un résultat découlant de la fonction SI, en fonction d'un filtre appliqué à une colonne.
Je m'explique, par exemple, dans la colonne B filtrée peut apparaitre soit CB, soit virement, soit un numéro, pas forcémént une seule ligne mais possiblement deux ou trois.
En filtrant par nom, je voudrais que la cellule D10 me retourne le résultat escompté, soit CB, soit, virement, soit chèque pour tous les autres cas de figure (un numéro).
J'espère avoir été assez clair ?
Merci par avance.
https://www.cjoint.com/c/LAdxsit28Hu
A voir également:

10 réponses

Mike-31 Messages postés 18346 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 13 novembre 2024 5 104
4 janv. 2022 à 18:03
Re,

c'est normal, en E38 tu as cette formule qui ne peut fonctionner en l'état
=SI(Table1[chèque]="virement";"virement";SI(Table1[chèque]="CB";"CB";"chèque"))

parce colonne chèque tu as
6546574
5400844
virement
CB

et dans ta formule tu ne fais pas référence soit à un numéro de facture ou une donnée unique de ton tableau.
Exemple si tu veux en E38 CB qui correspond à la facture 2393 il conviendrait d'utiliser la syntaxe RECHERCHEV par exemple en E34 tu saisis 2393 et en E34 cette formule

=SIERREUR(SI(ESTNUM(RECHERCHEV(E34;Table1;8;0)*1);"Chèque";RECHERCHEV(E34;Table1;8;0));"")



1
Raymond PENTIER Messages postés 58731 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 23 novembre 2024 17 243
4 janv. 2022 à 02:24
Bonjour.

Je ne vois vraiment pas comment on pourrait s'y prendre ...
Pourquoi ne ferais-tu pas l'inverse ? Saisir en D10 (si besoin avec une liste déroulante de cellule) le type de paiement, et que cette saisie serve à lancer le filtre !
0
bacflippe Messages postés 62 Date d'inscription mardi 29 juillet 2008 Statut Membre Dernière intervention 9 octobre 2023 4
4 janv. 2022 à 11:23
Bonjour et merci pour la réponse, malheureusement cela est impossible, le filtre est dèjà lancé par une macro!
Je ne peux pas changer le fonctionnement.
Les noms sont filtrés les uns après les autres, par ordre alphabétique ...
0
Raymond PENTIER Messages postés 58731 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 23 novembre 2024 17 243
4 janv. 2022 à 13:53
Bonjour.

Quand on travaille avec macro, c'est la moindre des choses de le signaler.
Ainsi je n'aurais même pas essayé d'intervenir, n'y connaissant rien en VBA ...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Mike-31 Messages postés 18346 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 13 novembre 2024 5 104
Modifié le 4 janv. 2022 à 14:14
Bonjour,

Tu parles de macro, hors ton fichier n'en contient pas et un fichier avec macro ne peut être enregistré en XLSX mais en XLSM, éventuellement en XLS s'il s'agit d'un fichier ancien ou que ton Excel est antérieur à 2007.
donc pour t'aider il faudrait connaitre toute la structure de ton fichier sinon les recherches peuvent durer longtemps.

PS: Salut Raymond Meilleurs vœux https://www.cjoint.com/c/KLFxKlfydcF

0
Raymond PENTIER Messages postés 58731 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 23 novembre 2024 17 243
Modifié le 4 janv. 2022 à 16:26
Merci Mike, pour tes Vœux sur PowerPoint !
Tu t'es bien amusé, et c'est réussi ...
Je te souhaite aussi réussite, dans tous les domaines, en espérant que notre collaboration sur CCM perdure.
Très amicalement,
Raymond
0
bacflippe Messages postés 62 Date d'inscription mardi 29 juillet 2008 Statut Membre Dernière intervention 9 octobre 2023 4
4 janv. 2022 à 14:26
Bonjour et meilleurs voeux,
voici le fichier en question : https://www.cjoint.com/c/LAenzhwcFpu

Je cherche à récupérer en E38 la condition de la colonne [chèque] filtrée en utilisant la macro bouton de contrôle féches gauche/droite.
Merci par avance
0
bacflippe Messages postés 62 Date d'inscription mardi 29 juillet 2008 Statut Membre Dernière intervention 9 octobre 2023 4
4 janv. 2022 à 18:18
Merci pour la réponse !
Je pense pouvoir l'adapter, je n'arrive pas à lier le numéro de facture apparaissant en première ligne suite au filtre appliqué à la cellule E34 par exemple, je ne sais pas si je suis clair...
Je souhaiterai que la cellule E34 me renvoie le premier numéro de facture de la colonne A une fois le filtre par nom appliqué...
0
bacflippe Messages postés 62 Date d'inscription mardi 29 juillet 2008 Statut Membre Dernière intervention 9 octobre 2023 4
4 janv. 2022 à 18:30
J'ai résolu le problème en appliquant cette formule matricielle en E34 ...par exemple...
=INDEX(Attestation!A62:A1020;EQUIV(1;SOUS.TOTAL(3;DECALER(Attestation!A62:A1020;LIGNE(Attestation!A62:A1020)-MIN(LIGNE(Attestation!A62:A1020));;1));0))


Merci pour l'aide !
A+
0
Mike-31 Messages postés 18346 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 13 novembre 2024 5 104
Modifié le 4 janv. 2022 à 18:32
Re,

essaye en A34 une formule matricielle qu'il faudra confirmer en cliquant en même temps sur les trois touches du clavier Ctrl Shift et Entrée et si tu fais bien la formule se placera entre ces accolades {}

=INDEX(Table1[N° fact];MIN(SI(SOUS.TOTAL(3;DECALER(A61;LIGNE(INDIRECT("1:"&LIGNES(A18:A400)));));LIGNE(INDIRECT("1:"&LIGNES(A18:A400))))))

et en cellule E34
=SIERREUR(SI(ESTNUM(RECHERCHEV(E34;Table1;8;0)*1);"Chèque";RECHERCHEV(E34;Table1;8;0));"")

0
bacflippe Messages postés 62 Date d'inscription mardi 29 juillet 2008 Statut Membre Dernière intervention 9 octobre 2023 4
Modifié le 4 janv. 2022 à 18:45
La formule fonctionne très bien également , du coup j'hésite ...laquelle est la mieux ?
0
Mike-31 Messages postés 18346 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 13 novembre 2024 5 104
Modifié le 4 janv. 2022 à 18:50
Re,

prend celle que je t'ai donnée, elle prend en compte les colonnes de ton tableau Table1[N° fact]

ensuite lorsque tu actives tes codes, il se mettent en erreur et plantent le VBA
en début de tes codes juste après tes variables colle cette gestion d'erreur

On Error Resume Next

0
bacflippe Messages postés 62 Date d'inscription mardi 29 juillet 2008 Statut Membre Dernière intervention 9 octobre 2023 4
5 janv. 2022 à 12:28
Ok merci pour les conseils !
Bonne journée et peut-être à bientôt !
0