IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
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
    Inscrit en
    Septembre 2007
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 30
    Points : 16
    Points
    16
    Par défaut [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
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    12 766
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 12 766
    Points : 28 625
    Points
    28 625
    Billets dans le blog
    53
    Par défaut
    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
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  3. #3
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    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
    Inscrit en
    Septembre 2007
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 30
    Points : 16
    Points
    16
    Par défaut
    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
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    12 766
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 12 766
    Points : 28 625
    Points
    28 625
    Billets dans le blog
    53
    Par défaut
    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
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  6. #6
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    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.

Discussions similaires

  1. Afficher un autre format date dans une requête
    Par filsdepub dans le forum SQL
    Réponses: 15
    Dernier message: 14/02/2018, 17h29
  2. [XL-2010] Conversion de cellules en format date via VBA?
    Par Steppingstone dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 06/02/2015, 16h15
  3. Concatenation avec une cellule au format date
    Par lightzeus dans le forum Excel
    Réponses: 2
    Dernier message: 01/07/2007, 16h18
  4. Modification du format date de mes cellules excel
    Par largo9020 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 19/11/2006, 14h53
  5. Problème pour afficher un format date dd/MM/yy HH:mm
    Par indy3 dans le forum Hibernate
    Réponses: 5
    Dernier message: 29/03/2005, 10h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo