XL 2013 Chercher une valeur approchante avec tolérance (vers le haut ou le bas) dans un tableau strucuré

Leguyl

XLDnaute Occasionnel
Bonjour à tou(te)s,

J'importe, dans un tableau structuré, les données utiles provenant de l'export xls brut d'un échéancier clients.

Dans le tableau, les colonnes 95% | 90% | 7,50% | 5% | 3,75% et 2,50% sont des pourcentages de la colonne Vente et correspondent à des tranches de paiements.

Le souci est que le fichier source n'indique pas à quoi correspondent exactement les paiements reçus. Je recherche dans les colonnes Cell. x%, une valeur correspondante qui m'indique à quelle cellule me référer dans la colonne Crédit,

Par ex, pour la colonne Cell. 95%, j'utilise la formule suivante : =SI([Client]<>[95bis];"";SIERREUR(SI([Réf.]="VEN";"S"&EQUIV(-[95%];[Crédit];0)+7;"");""))

Mon problème est que les paiements effectués ne sont pas toujours exactement de 95, 90, ou 7.50% etc. Parfois il y a des différences de quelques cents ou €uros de moins ou de plus.

J'aimerais donc savoir comment trouver la valeur approchante (qu'elle soit légèrement supérieure ou inférieure), si la valeur exacte n'existe pas.

Pas sûr que ce soit clair comme ça, je joins donc un fichier.

D'avance, mille mercis à qui voudra m'aider.


Bonne journée,
Leguyl
 

Pièces jointes

  • Échéancier test2.xlsm
    233.8 KB · Affichages: 24

Leguyl

XLDnaute Occasionnel
Re bonjour à tou(te)s,

JHA, si tu passes par là, je me suis encore réjoui trop vite, ça ne marche pas au niveau de l'application de la tolérance.

Par ex, pour le client D, ligne 60, la formule ne fait pas correspondre les 1725,35€ de crédit et les 1672,53 € de la colonne 95%, que j'indique 5 ou, 10 ou même 100% de tolérance.

Bonne journée,
Leguyl
 

Leguyl

XLDnaute Occasionnel
Re JHA,

Je crois que toi aussi tu t'es perdu entre mes demandes, peut-être pas toujours très claires :confused:

À l'origine, mon premier fichier comportait deux feuilles avec chacune un tableau structuré.

Dans la feuille Import, j'importais les données et faisais la plupart des calculs mais n'arrivais pas à me débarrasser du problème de calculs dans les colonnes Lignes x% à cause des réf circulaires. Donc pour palier à ça, j'importais les valeurs (et non les formules) de toutes les autres colonnes dans le second tableau Résultat, et là je ne faisais que les calculs qui posaient problèmes dans le premier tableau.

Seulement, pour le boulot, comme je l'indiquais dans le poste #12 je dois utiliser un seul et unique tableau. Raison pour laquelle j'ai redemandé de l'aide.

Peut-être que je me ferais mieux comprendre avec une image. Quand tout va bien, ça me donne ceci :

sshot-3.png

Le problème, comme écrit dans la zone de texte dans le fichier, est que parfois, la formule ne trouve pas de correspondance bien qu'il y en ait, quelle que soit la tolérance appliquée. Voir plus bas, les lignes 60, 62, 74 etc

Bonne soirée,
Leguyl
 

Pièces jointes

  • Échéancier test8.xlsm
    212.1 KB · Affichages: 1

JHA

XLDnaute Barbatruc
Bonjour à tous,

Un essai avec une autre formule matricielle qui me parait plus précise au changement du pourcentage.
VB:
=SIERREUR(PETITE.VALEUR(SI((ABS([mini tolérance])<=([@[95%]]))*(ABS([maxi tolérance])>=([@[95%]]))*([Client]=[@Client])*(LIGNE([Crédit])>LIGNE());LIGNE([Crédit]));1);0)
Ajout de deux colonnes (mini et maxi) pour une meilleure vision de la tolérance.

JHA
 

Pièces jointes

  • Échéancier test6 (chgt formule).xlsm
    294 KB · Affichages: 2

Leguyl

XLDnaute Occasionnel
Re JHA,

Je viens tout juste de tester ta nouvelle solution dans le fichier de travail et cela semble fonctionner au poil cette fois. Que dire, si ce n'est un tout grand merci d'avoir persévéré à m'aider à chaque souci rencontré sur ce sujet.

Me reste une fois de plus à décortiquer le fonctionnement de cette formule pour en comprendre totalement le fonctionnement et tenter de m'améliorer un peu. C'est chouette d'en apprendre un peu plus chaque jour.

Très bonne soirée à toi.

@+
Leguyl
 

Statistiques des forums

Discussions
315 090
Messages
2 116 106
Membres
112 661
dernier inscrit
ceucri