Microsoft 365 Affichage prochaine échéance

  • Initiateur de la discussion Initiateur de la discussion Judu69
  • 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 !

Judu69

XLDnaute Nouveau
Bonjour,
J'ai des dates en L2, V2, X2, AA2 et AB2.
Je voudrais qu'en D2 apparaissent via une formule les informations suivantes :
- Si ces cases sont vides : qu'il n'apparaisse rien : j'ai réussi via la formule suivante : SI(NBVAL(L2;V2;X2;AA2;AB2)=0;""
- Que la prochaine échéance apparaisse : ça fonction via la formule suivante : PETITE.VALEUR(L2:AB2;NB.SI(L2:AB2;"<"&AUJOURDHUI())+1
- Si des dates sont déjà renseignées mais qu'elles sont toutes passées : qu'il n'apparaisse rien dans ma cellule : je n'y arrive pas.
J'espère avoir été clair dans mon explication.
Merci,
Ju
 
Bonjour,
Ca ne fonctionne toujours pas
Ca m'indique qu'un trop grand nombre d'argument ont été rentrés
Je joins un exemple de fichier ce sera peut être plus simple
J'ai fait exprès de ne pas mettre de signe " =" devant la formule car Excel refuse de la prendre.
Merci de votre aide
 

Pièces jointes

Bonjour Judu69, JHA

Proposition d'utilisation d'un UDF permettant d'utiliser une caractéristique "boolean" (0/1) pour la condition 3
L'UDF exige 5 données à remplir comme indiqué à choisir.
Si les 5 dates sont inférieures à aujourdhui() alors "".
Et valide, sauf erreur, la première condition

VB:
Function dateJ(c1, c2, c3, c4, c5)
xc1 = 0: xc2 = 0: xc3 = 0: xc4 = 0: xc5 = 0
If c1 < Date Then xc1 = 0 Else xc1 = 1
If c2 < Date Then xc2 = 0 Else xc2 = 1
If c3 < Date Then xc3 = 0 Else xc3 = 1
If c4 < Date Then xc4 = 0 Else xc4 = 1
If c5 < Date Then xc5 = 0 Else xc5 = 1
dateJ = xc1 + xc2 + xc3 + xc4 + xc5
End Function

Voir fichier joint

xl-ment
 

Pièces jointes

Dernière édition:
Bonjour à tous,

A essayer cette formule matricielle avec ce que je comprends:
VB:
=SI(NB.SI($L2:$AB2;">="&AUJOURDHUI())=0;GRANDE.VALEUR(SI((L2:AB2<AUJOURDHUI());L2:AB2);1);PETITE.VALEUR(SI((L2:AB2>=AUJOURDHUI());L2:AB2);1))

JHA
 

Pièces jointes

Bonjour à tous,

A essayer cette formule matricielle avec ce que je comprends:
VB:
=SI(NB.SI($L2:$AB2;">="&AUJOURDHUI())=0;GRANDE.VALEUR(SI((L2:AB2<AUJOURDHUI());L2:AB2);1);PETITE.VALEUR(SI((L2:AB2>=AUJOURDHUI());L2:AB2);1))

JHA
au
Il y a un instant
  • Nouveau
  • Ce lien n'existe plus
  • #10
Eisas_fr a dit:
=MIN(SI(L2<AUJOURDHUI();MAX(L2;N2;P2;R2);L2);SI(N2<AUJOURDHUI();MAX(L2;N2;P2;R2);N2);SI(P2<AUJOURDHUI();MAX(L2;N2;P2;R2);P2);SI(R2<AUJOURDHUI();MAX(L2;N2;P2;R2);R2))
Merci mais la date dépassée apparait toujours sinon j'ai 00/01/1901
 
Bonjour à tous,

A essayer cette formule matricielle avec ce que je comprends:
VB:
=SI(NB.SI($L2:$AB2;">="&AUJOURDHUI())=0;GRANDE.VALEUR(SI((L2:AB2<AUJOURDHUI());L2:AB2);1);PETITE.VALEUR(SI((L2:AB2>=AUJOURDHUI());L2:AB2);1))

JHA

Bonjour, merci cela fonctionne.
Une question néanmoins me taraude, serait il possible que la fonction suivante "PETITE.VALEUR(L2:AB2;NB.SI(L2:AB2;"<"&AUJOURDHUI())+1))" ne prenne en compte que les cellules : L2;V2;X2;AA2;AB2 ?
Merci,
 
Bonjour à tous,

A essayer cette formule matricielle
VB:
=PETITE.VALEUR(SI((L2<=AUJOURDHUI())+(V2<=AUJOURDHUI())+(X2<=AUJOURDHUI())+(AA2<=AUJOURDHUI())+(AB2<=AUJOURDHUI());(L2;V2;X2;AA2;AB2));1)

JHA
Bonjour, ça ne semble pas fonctionner. Ce n'est pas grave, j'ai contourner le problème en trichant un peu. CF le fichier 😉. Merci.
 

Pièces jointes

- 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

Discussions similaires

Retour