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

Microsoft 365 date calendrier, obtenir année - mois et jour

Usine à gaz

XLDnaute Barbatruc
Bonjour à toutes et à tous,
Je vous souhaite un bon dimanche

Me revoilà en ce dimanche "pluvieux" en Tunisie.
Je bute sur une ch'tite formule de rien qui fonctionne pourtant habituellement

La date en "J" est générée par le calendrier et c'est certainement la raison du problème :
Pour info : la colonne O est juste un essai de formule. Elle n'existe pas dans mon fichier de travail.


En colonnes "P - Q - R", Je n'arrive pas à obtenir
Je n'arrive pas à obtenir : l'ANNEE de J - le MOIS de J - le JOUR de J
Auriez-vous la solution ?
Je joins le fichier test.
Avec mes remerciement,
Amicalement,
lionel,
 

Pièces jointes

  • tri_dates.xlsm
    104 KB · Affichages: 24
Dernière édition:
Solution
Bonjour Lionel, ChTi160, le fil,

jean marie a écrit : «
FormatDateUserSurCell est une constante qui a pour valeur False
soit
Private Const FormatDateUserSurCell = False

If FormatDateUserSurCell Then ActiveCell.NumberFormat = FormatDateUser$
»

comme FormatDateUserSurCell est toujours FAUX, le test sera toujours FAUX
➯ ce qui est à droite de Then ne sera JAMAIS exécuté ➯ on mettra JAMAIS
le format de nombre indiqué par FormatDateUser.

AUSSI, on POURRAIT très bien SUPPRIMER cette ligne de code INUTILE !

MAIS vous n'avez pas bien lu ce qui...

goube

XLDnaute Accro
Bonjour Lionel, ChTi160,

Une proposition
VB:
=ANNEE(SUBSTITUE(GAUCHE(J2;10);" ";"/"))
=MOIS(SUBSTITUE(GAUCHE(J2;10);" ";"/"))
=JOUR(SUBSTITUE(GAUCHE(J2;10);" ";"/"))
Cordialement
 

ChTi160

XLDnaute Barbatruc
Re
Ok tu est obligé d'avoir ce format de date dans la colonne "J"
car je pense que les données de cette colonne ne sont pas reconnues comme dates ?
Edit : bonjour goube :j'allais parler de mettre au format "jj/mm/yyyy"
jean marie
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonjour,

Un peu en retard. Voir formules en colonnes O à P.

C'est le calendrier qui est à modifier pour qu'il renvoie une "VRAIE" date et non du texte qui n'est pas interprété comme date => je laisse à d'autres le soin de modifier le code du calendrier.
 

Pièces jointes

  • Usine à gaz- tri_dates- v1.xlsm
    99 KB · Affichages: 9
Dernière édition:

ChTi160

XLDnaute Barbatruc
Re
Bonjour Dudu , mapomme
Ou alors modifier la procédure du calendrier!
VB:
If IsDate(DateSelectUser) Then
      ActiveCell = CDate(DateSelectUser)
      If FormatDateUserSurCell Then ActiveCell.NumberFormat = FormatDateUser$
                    ActiveCell.Offset(0, 6) = Year(DateSelectUser)
                      ActiveCell.Offset(0, 7) = Month(DateSelectUser)
                        ActiveCell.Offset(0, 86) = Day(DateSelectUser)
       End If
jean marie
 

Discussions similaires

Réponses
6
Affichages
482
Réponses
0
Affichages
379
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…