Formule matricielle

Bonjour, j'ai un petit problème avec ma formule matricielle, elle me donne toujours la réponse ¨FAUX¨ ou ¨VALEURS¨. Voici la formule :

=SI(ET(S72>0;S71<0;INDEX(U73:U824;EQUIV(VRAI;U73:U824>0;0);1)-U72);SI(ET(S72<0;S71>0;U72-INDEX(U73:U824;EQUIV(VRAI;U73:U824>0;0);1));""))

J'ai pris le soin de la validé ¨CTRL - MAJ - ENTER¨.

Je vous explique..dans la colonne S, j'ai des nombres positifs et négatifs. Quand les nombres passe du positif au négatif et vice-versa, je veux que la formule additionne ou soustrait les deux nombres qui ce suivent dans la plage de la colonne U. Les nombres qui sont dans la colonne U ont été copié (valeur seulement) de la colonne T. J'ai fait ceci pour m'assurer que la formule matricielle de la colonne V prenne ses données dans une colonne qui n'a que des nombres.

Espérant avoir été assez explicatif, je vous remercie d'avance et je joint un fichier pour aidé à la compréhension du problème.

Salut et bienvenue sur le Forum,

Je pense que tu ferais mieux de nous indiquer les résultats désirés et la manière de les calculer.

Dans ta formule tu traites deux cas possibles, par exemple par rapport à la cellule V6 : Premièrement « Si S6>0 et S5<0 » et deuxièmement « Si S6<0 et S5>0 ». Mais quel résultat désires-tu « Si S6<0 et S5<0 » et « Si S6>0 et S5>0 » ??

Si tu pouvais repérer un exemple dans ton fichier pour chacune des situations décrites ci-dessus et m'indiquer quel est le résultat attendu dans la colonne V et comment tu effectues le calcul (mais pas par une formule Excel, avec des mots français ) pour y arriver, je pourrais très certainement t’aider.

Cordialement.

Merci pour la réponse.

Je précise ma demande, j'aimerais que si S72>0 et S75<0, je veut que le prochain résultat qui s'affiche sous U72, qui est U95, donc je veut comme résultat (U95 - U72) = -0.75

Si le contraire arrive comme sur la ligne 95, S95<0 et S94>0, je veut que le résultat de la cellule U95 - le prochain résultat sous la cellule U95 qui est U275, donc (U95 - U275) = 2.25

Si tu a d'autres questions, n'hésite pas.

Merci de prendre le temps de m'aidé.

Salut,

Tes données ne sont pas d’une grande précision, c’est assez difficile de deviner ce que tu désires. Ainsi lorsque tu dis : ‘’si S72>0 et S75<0’’ il faut selon moi comprendre ‘’ si S72>0 et S71<0’’. Si je me trompe, ma réponse risque d’être erronée.

Ensuite, en réponse à mes précédentes demandes, tu aurais pu me préciser que si « Si S6<0 et S5<0 » et « Si S6>0 et S5>0 », tu ne désirais aucun résultat.

Dans le fichier ci-joint, j’ai placé une macro qui devrait répondre à ton attente. Lorsque tu cliques sur le bouton mis en place en V1, ta colonne V s’actualise. Tous les anciens résultats sont effacés (si jamais tu as importés de nouvelles lignes dans ce tableau) et seuls les résultats attendus sont inscrits, les autres lignes restent vides.

Amicalement.

9formule-excel.pdf (187.04 Ko)

Merci Yvouille, c'est presque ça. J'ai de la difficulté à m'expliqué avec du texte donc j'ai joint un nouveau fichier en PDF pour m'expliqué.

Très apprécié ton aide

Votre PDF semble incomplet !

Salut Michout,

Ton ficher PDF est incomplet et de toute façon il me semble plus facile de rester sur Excel. Fais référence aux objets Excel (feuille, cellule, ligne, colonne, etc.) lorsque tu veux expliquer ton problème.

Tu dis que c'est presque ça, mais les deux premiers résultats obtenus correspondent à tes deux calculs à toi

A te relire.

Vous êtes patient sur ce forum, tant mieux pour moi!!

Je tente de m'expliquer d'une autre façon.......voir le fichier EXCEL

Merci à vous

Ok,

Je crois que j'ai saisi la petite finesse complémentaire

Un nouveau fichier à tester.

Cordialement.

Merci d'Yvouille, ça fonctionne très bien. Si je veux transférer la macro dans un autre fichier, est-ce possible? Est-ce qu'il faut que les colonnes soit identiques? Je ne mis connais pas trop en macro.

C'est très apprécié,

Amicalement

Michout

Re,

Je ne comprends pas très bien ; tu poses encore des questions et tu indiques ton fil comme ‘’Résolu’’ !! J’espère que mon travail actuel ne soit pas inutile.

Pour utiliser une macro dans un autre fichier, tu peux copier-coller le texte de la macro d’un module à un autre dans l'explorateur VBA. Mais le plus simple est de cliquer-glisser le module contenant la macro vers l’autre fichier, toujours dans cet explorateur. Dans mon image ci-dessous, tu peux glisser le Module1 du fichier Formule matricielle_V2 vers le Fichier Deux et le tour est joué.

Ma macro est prévue pour utiliser des données des colonnes S et T et inscrire un résultat dans la colonne U, tout ceci en partant de la ligne 5. Si ton fichier réel ne correspond pas à cela – mais alors je ne comprendrais pas pourquoi tu m’as fourni un fichier fantaisiste – ça ne passera pas sans modifications.

Amicalement.

transfert d un module
Rechercher des sujets similaires à "formule matricielle"