Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Étirer une formule jusqu'à une valeur calculé

  • Initiateur de la discussion Initiateur de la discussion Skeo
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

S

Skeo

Guest
Bonjour à tous,

Tout est dis dans le titre ou presque.

J'ai une valeur calculé dans la colonne A (une date). Je voudrais que cette formule se déroule jusqu'à une valeur calculée contenue dans la cellule J6 en fonction de la selection de la cellule F4... Voyez en pièce jointe. Comment puis-je réussir, si possible sans passer par une macro?

Merci d'avance à vous!
 

Pièces jointes

Re : Étirer une formule jusqu'à une valeur calculé

Bonjour Skeo.


Un essai en pièce jointe.​


Bonne soirée.


ℝOGER2327
#7593


Lundi 2 Haha 142 (Dissolution d’Edgar Poe, dinomythurge - fête Suprême Quarte)
16 Vendémiaire An CCXXIII, 7,0073h - belle-de-nuit
2014-W41-2T16:49:03Z
 

Pièces jointes

Re : Étirer une formule jusqu'à une valeur calculé

Bonsoir et merci de cette réponse.

Cependant, bien que je ne puisse pas dire que ça ne marche pas, je n'arrive pas à la comprendre😕... Parce qu'en faite, j'ai simplifier ma question et que maintenant il me faut adapter cette formule à mon contexte... Donc je doit la comprendre pour la manipuler!

J'ai réussi à répondre à une partie de mes questions mais certaines restent en suspend, donc je m'interroge :

si je prend le morceau suivant :

SI(MOIS.DECALER(B15;--INDEX({1;3;6;12;12};CHERCHE(GAUCHE($F$4&" ";1);"MTSA ")))>$J$6

Je ne comprend pas les éléments suivants : --INDEX({1;3;6;12;12} Pourquoi "--"? et quel est cet usage de la formule INDEX, dans laquelle la matrice est ici entre {} avec des références qui ne semblent faire référence à rien (d'après l'usage simpliste que j'en fait du moins...😕)

Et dans GAUCHE($F$4&" ";1), je ne comprend rien ... Pourquoi chercher à extraire "M", et à quoi correspond &" " ?

Bref, je ne comprend pas grand chose mais j'aimerais comprendre.... Pouvez vous m'expliquer s'il vous plait😱

Merci!
 
Re : Étirer une formule jusqu'à une valeur calculé

Re...


(...)
Cependant, bien que je ne puisse pas dire que ça ne marche pas, je n'arrive pas à la comprendre😕... Parce qu'en faite, j'ai simplifier ma question et que maintenant il me faut adapter cette formule à mon contexte...
Eh oui ! C'est l'inconvénient de poser un problème autre que celui qu'on veut résoudre. Et quelle perte de temps !


Voici quelques éléments de réponse :​

Dans
Code:
=SI(B15="";"";SI(MOIS.DECALER(B15;--INDEX({1;3;6;12;12};CHERCHE(GAUCHE($F$4&" ";1);"MTSA ")))>$J$6;"";MOIS.DECALER(B15;--INDEX({1;3;6;12;12};CHERCHE(GAUCHE($F$4&" ";1);"MTSA ")))))
"--" est un résidu de mise au point absolument inutile et doit être supprimé. (On ne se relit jamais assez.)
Formule corrigée :
Code:
=SI(B15="";"";SI(MOIS.DECALER(B15;INDEX({1;3;6;12;12};CHERCHE(GAUCHE($F$4&" ";1);"MTSA ")))>$J$6;"";MOIS.DECALER(B15;INDEX({1;3;6;12;12};CHERCHE(GAUCHE($F$4&" ";1);"MTSA ")))))

Il s’agit de décaler la date en B15 de 1, 3, 6 ou 12 mois selon que F4 vaut Mensuelle, Trimestrielle, Semestrielle, Annuelle.
Il me faut donc transformer Mensuelle, Trimestrielle, Semestrielle, Annuelle en 1, 3, 6, 12. Je fais cela en deux étapes :

Premièrement, profitant de ce que chaque valeur possible de F4 commence par une lettre différente, je peux identifier chaque valeur par GAUCHE($F$4;1).
CHERCHE(GAUCHE($F$4;1);"MTSA") renvoie 1, 2, 3 ou 4 selon que F4 vaut Mensuelle, Trimestrielle, Semestrielle ou Annuelle.
Il faut également considérer que F4 peut être vide. Dans ce cas, GAUCHE($F$4;1) renvoie "" (chaîne de longueur nulle). Donc CHERCHE(GAUCHE($F$4;1);"MTSA") renvoie 1. Donc le cas où F4 est vide est assimilé au cas où F4 vaut Mensuelle. Pour éviter cela, j’écris CHERCHE(GAUCHE($F$4&" ";1);"MTSA ").
GAUCHE($F$4&" ";1) renvoie "M", "T", "S" ou "A" si F4 n’est pas vide, et " " si F4 est vide.
CHERCHE(GAUCHE($F$4&" ";1);"MTSA ") renvoie 1, 2, 3, 4 ou 5 selon que F4 vaut Mensuelle, Trimestrielle, Semestrielle, Annuelle ou est vide.

Deuxièmement, j’associe 1, 2, 3, 4 à 1, 3, 6, 12. En l’absence d’indication sur ce qu’il convient de faire lorsque F4 est vide, j’ai choisi d’assimiler ce cas au cas où F4 vaut Annuelle. J’ai choisi INDEX({1;3;6;12;12};CHERCHE(GAUCHE($F$4&" ";1);"MTSA ")) mais j’aurais pu écrire CHOISIR(CHERCHE(GAUCHE($F$4&" ";1);"MTSA ");1;3;6;12;12).

À propos de la syntaxe de la fonction INDEX, voir l’aide fournie avec Excel ; extrait :
La syntaxe de la fonction INDEX contient les arguments suivants :
matrice Obligatoire. Représente une plage de cellules ou une constante matricielle.
(…)

Pour le reste, ça devrait être sans problème.


Bonne nuit.​


ℝOGER2327
#7594


Lundi 2 Haha 142 (Dissolution d’Edgar Poe, dinomythurge - fête Suprême Quarte)
16 Vendémiaire An CCXXIII, 8,6123h - belle-de-nuit
2014-W41-2T20:40:11Z
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
3
Affichages
213
Réponses
5
Affichages
240
Réponses
4
Affichages
214
Réponses
1
Affichages
191
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…