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 :

Utilisation date dans textbox [XL-2013]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Août 2009
    Messages
    817
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 817
    Par défaut Utilisation date dans textbox
    Bonjour,

    Malgré la consultation des tuto sur les dates, j'ai un truc qui coince.

    Je demande à l'utilisateur de saisir une date dans un texte box
    Je teste si c'est bien une date
    Pour différentes raisons (appelle d'une requete sql sur une base externe), je passe par l'écriture de la date dans une cellule qui me sert ensuite de variable.
    pour cela j'utilise CDATE de ma saisie, mais malgré les apparences ce n'est toujours pas une vraie date.

    J'ai trouvé un contournement en soustrayant à "DATE" la différence entre la date et la date saisie mais c'est moche, et surtout j'aimerais comprendre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub CommandButton1_Click()
    If Not IsDate(Me.TextBox6) Then MsgBox "Veuillez saisir une date correcte": Exit Sub
    If Num_Machine = "" Then MsgBox "Merci de choisir une machine": Exit Sub
    '      ThisWorkbook.Sheets("TRG").Range("BA2") = CDate(Me.TextBox6)  <========= pourquoi ça marche pas ?
     
    ' la méthode brute qui marche
          Dim Horizon As Integer
          Horizon = Date - CDate(Me.TextBox6)
    ThisWorkbook.Sheets("TRG").Range("BA2") = Date - Horizon
    Merci
    Denis

  2. #2
    Membre Expert Avatar de Thautheme
    Homme Profil pro
    salarié
    Inscrit en
    Août 2014
    Messages
    1 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : salarié

    Informations forums :
    Inscription : Août 2014
    Messages : 1 373
    Par défaut
    Bonjour Denis, bonjour le forum,

    Essaie comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ThisWorkbook.Sheets("TRG").Range("BA2") = DateSerial(Year(Me.TextBox6.Value), Month(Me.TextBox6.Value), Day(Me.TextBox6.Value))

  3. #3
    Membre éclairé
    Inscrit en
    Août 2009
    Messages
    817
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 817
    Par défaut
    Merci Thauthème !

    Ca fonctionne

    j'avaisi beau lire et relire les tutos sur les dates .....
    pour mémo
    http://https://didier-gonard.develop...-excel-et-vba/
    et
    https://mhubiche.developpez.com/vba/...ions/datetime/
    où on parle de dateserial

    encore falait-il savoir l'utiliser .

    en tout cas
    Merci ! je me coucherai (un peu) moins bête.

    Denis

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comparaison Dates dans textbox
    Par lafafmentvotre dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 20/10/2009, 10h39
  2. date dans textbox
    Par manime dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 01/10/2009, 20h50
  3. afficher la date dans textbox
    Par sky88 dans le forum VB.NET
    Réponses: 1
    Dernier message: 22/07/2009, 16h59
  4. Masque de saisie date dans textbox
    Par akmer dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 08/08/2008, 13h15
  5. afficher dates dans textbox d'un Userform
    Par newsinfos dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 19/11/2007, 10h41

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