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

XL 2016 Date en majuscule via userform (résolu)

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

Cougar

XLDnaute Impliqué
Bonjour le forum,

J'aimerai que la date soit inscrite dans la cellule en majuscule (ex. : 2020-09-04 = 2020-SEP-04) ceci avec l'aide d'un userform (voir le fichier joint).

Merci
 

Pièces jointes

re
bonjour
haie!!haie!!haie!! M12
lolote83 même punition
TextBox2.Value = UCase(Format(TextBox2.Value, "yyyy-mmm-dd"))
vous formatez une valeur string en date vous ?
ça va pas marcher sur tout le PCs
TextBox2.Value = UCase(Format(cdate(TextBox2.Value), "yyyy-mmm-dd"))

j'ajouterais qu'avant de formater il faudrait peut être vérifier la validité de la date (j'disca moi....)


VB:
Private Sub TextBox2_Change()
    With TextBox2
        If Len(.Value) = 10 And IsDate(.Value) Then
            TextBox2.Value = UCase(Format(CDate(TextBox2.Value), "yyyy-MMM-dd"))
        End If
    End With
End Sub

NE PAS OUBLIER QUE POUR TRANSMETRE CETTE DATE A UNE CELLULE PAR LA SUITE IL FAUDRA ALORS UTILISER DATEVALUE(TEXTBOX2)et reformater la cellule comme le textbox sinon c'est du string
en ce qui concerne ton userform
la fonction date de vba n'a pas besoins d'etre reformatée 😉
VB:
Private Sub CommandButton1_Click()
            'Range("B6").Select
            Range("B6") = DateValue(TextBox2.Value)
             Range("B6").NumberFormat = UCase("yyyy-mmm-dd")'??????????????????????
End Sub

Private Sub UserForm_Initialize()
Dim Articles As Variant
    'TextBox2 = Date
    'TextBox2 = CDate(TextBox2.Value)
    TextBox2.Value = Format(Date, "yyyy-mmm-dd")
End Sub
 
Dernière édition:
Bonjour le fil, le forum,

Merci pour vos solutions. Effectivement ce n'était pas très jolie mais après plusieurs tentatives on essai n'importe quoi.

Dernière demande, comment avoir le mois avec seulement 3 majuscules.

Merci
 
re
le problème si tu modifie(ucase) le value ca n'est plus une date mais un string dans la cellule
et on ne peut pas faire ucase("YYYY-MMM-DD") ça sert a rien
les formats de date sont fixes
c'est donc un choix que tu dois faire
soit tu l'a en maj et c'est pas une date donc les calculs entre cellule NIET!!! et il faut remanier le initialise dans l'usf
soit pas en maj et tout est date et donc utilisable comme tel dans le fichier
 
donc en string
dans ton userform
VB:
Private Sub CommandButton1_Click()
    Range("B6") = TextBox2.Text
End Sub

Private Sub UserForm_Initialize()
    Dim Articles As Variant, arDate
    arDate = Array(Year(Date), Left(Format(Date, "mmm"), 3), Format(Date, "dd"))
    TextBox2 = UCase(Join(arDate, "-"))
End Sub
 
- 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

Réponses
5
Affichages
99
  • Question Question
Microsoft 365 format date
Réponses
3
Affichages
139
Réponses
4
Affichages
219
  • Question Question
Microsoft 365 Contrôle sur date
Réponses
8
Affichages
313
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…