Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

[Userform] afficher cellule en format date longue


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    [Userform] afficher cellule en format date longue
    Hello,

    Suite à mon poste sur une formule ici

    J'avais demandé pour faire un Userform qu'on m'avait entre guillemet déconseillé pour juste ça.
    J'ai quand même voulu essayer juste pour voir et je suis arrivé exactement à ce que je voulais, bon j'ai fait au plus simple mais ça donne ce que je voulais sauf un truc, le plus bête je suppose, il me retranscrit une cellule qui elle m'affiche une date longue comme je voulais mais il me retranscrit que le (exemple) 17/02/2020 il met pas le lundi devant.

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub CommandButton1_Click()
    Me.TextBox2 = Sheets("Feuil1").Range("B1")
    End Sub


    Quelqu'un a une idée ?

    Merci d'avance

  2. #2
    Rédacteur

    Bonjour,
    Quelqu'un a une idée ?
    En utilisant la propriété Text de l'objet Range

    Une autre solution est l'utilisation de la fonction Format
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Quelques contributions : USERFORM - Créer, Consulter, Modifier et Supprimer des enregistrements à l'aide d'un formulaire - Géolocalisation d'une adresse avec Excel et Google sans VBA

  3. #3
    Expert éminent sénior
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    Me.TextBox2 = Format(Sheets("Feuil1").Range("B1").Value, "dddd dd mmmm yyyy")


    Cela dit, faire ça dans une TextBox, c'est chercher les ennuis.
    Déjà que mettre une date au format classique dans une TextBox, c'est plus que casse-gueule, utiliser un format long c'est suicidaire.
    A moins de s'en servir comme un simple Label d'affichage et non comme un champ de saisie. Mais, dans ce cas, autant utiliser un vrai Label.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  4. #4
    Membre à l'essai
    C'est uniquement pour avoir un affichage sauf pour un truc.

    En gros, j'ai une case dans le Userform ou je vais encoder une date, il l'a retranscrit dans la feuille excel dans la case A1. Cette case A1 va mettre une date par rapport à une formule en B1 qui va être affichée dans le Userform. Il va aussi avoir une date en C1 qui va être aussi affichée dans le Userform.

    Pourquoi c'est chercher les ennuies ?
    Label c'est écrire quelque chose, ça affiche pas, si ?

  5. #5
    Rédacteur

    Bonjour,
    Label c'est écrire quelque chose, ça affiche pas, si ?
    Un contrôle Label est fait pour afficher une information, un contrôle TextBox est conçu pour modifier, insérer des données.
    Maintenant, il est toujours possible de mettre la valeur de la propriété Locked du TextBox à True comme Me.TextBox1.Locked = True pour empêcher d'effectuer des modifications


    Pourquoi c'est chercher les ennuies ?
    Parce-que lors de l'insertion d'une date, il y a lieu d'effectuer des contrôles sur sa validité et que 17/02/2020 est plus simple à contrôler que lundi, 17 février 2020

    A lire Utiliser les contrôles dans un UserForm, en VBA Excel
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Quelques contributions : USERFORM - Créer, Consulter, Modifier et Supprimer des enregistrements à l'aide d'un formulaire - Géolocalisation d'une adresse avec Excel et Google sans VBA

  6. #6
    Expert éminent sénior
    Citation Envoyé par gemxtrust Voir le message
    Pourquoi c'est chercher les ennuies ?
    Essaye et tu verras...
    On n'apprend jamais aussi bien que par ses erreurs.

    Pour résumer, entre les risques d'erreurs de frappe ou d'orthographe, la dualité francophone/anglophone entre Excel et VBA et la difficulté d'interprétation d'une désignation complexe de date aussi bien pour Excel que VBA, il y a de grandes chances pour que le passage d'une date complexe d'une TextBox vers une cellule format date d'Excel se passe mal et que ce soit une usine à gaz complexe et peu fiable pour faire en sorte que ça se passe à peu près correctement.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.