DATE FIN DE MOIS

  • Initiateur de la discussion philippe
  • Date de début
P

philippe

Guest
Bonjour le forum

Afin de calculer la date de valeur des cartes bleues, je souhaiterais obtenir ce résultat :

si la date de la carte est comprise entre le 25 du mois précédent et le 24 du mois en cours la date de valeur bancaire est le dernier jour du mois en cours sinon dernier jour du mois suivant. Et pour compliquer encore les choses, si cette date de valeur tombe un samedi ou un dimanche elle devra être décalée au vendredi précédent.

ex : date de la carte :16 mai 2003, la date de valeur doit être Vendredi 30 mai car le 31 est un samedi.

date de la carte : 27 mai 2003, la date de valeur doit être lundi 30 juin 2003.

Je ne parviens pas à trouver un soupcon de solution. Si quelqu'un peut se pencher sur la question je le remercie d'avance.

Philippe
 
C

C@thy

Guest
Bonjour Philippe,

oui, je sais, c'est un peu compliké mais je pense que cela fonctionne :

=SI(JOUR(A1)<25;SI(OU(JOURSEM(FIN.MOIS(A1;0))=7;JOURSEM(FIN.MOIS(A1;0))=1);FIN.MOIS(A1;0)-JOURSEM(FIN.MOIS(A1;0)-6);FIN.MOIS(A1;0));SI(OU(JOURSEM(FIN.MOIS(A1;1))=7;JOURSEM(FIN.MOIS(A1;1))=1);FIN.MOIS(A1;1)-JOURSEM(FIN.MOIS(A1;1)-6);FIN.MOIS(A1;1)))

Attention! FIN.MOIS est une macro complémentaire, il faut l'installer :

Outils Macros complémentaire cocher la case à gauche de Utilitaire d'analyse

BipBip.gif
 
P

philippe

Guest
Merci Cathy

Super formule !!! et en plus çà marche.
Le problème est qu'il faut que je l'introduise dans une macro et là çà ne fonctionne pas car elle se traduit en automatique par :

ActiveCell.FormulaR1C1 = _
"=DAY(R[-2]C)<25 IF(OR(WEEKDAY(FIN.MOIS(R[-2]C,0))=7,WEEKDAY(FIN.MOIS(R[-2]C,0))=1),FIN.MOIS(R[-2]C,0)-WEEKDAY(FIN.MOIS(R[-2]C,0)-6),FIN.MOIS(R[-2]C,0))"

Peut être faudrait-il utiliser select case mais je n'ai jamais compris comment on s'en sert !!

Merci

Philippe
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
314 655
Messages
2 111 604
Membres
111 217
dernier inscrit
aladinkabeya2