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 :

Comment documenter 12:00 dans textbox [XL-2003]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 142
    Par défaut Comment documenter 12:00 dans textbox
    Bonjour à tous,
    Je rencontre un petit pb d'affichage d'heure dans un TextBox. Pourriez-vous m'aider ?
    J'ai fais un petit planning de salles dans Excel ou je documente les créneaux horaires via des TextBox.
    Pour la saisie des heures je choisis dans une liste ou j' incrémente par 1/2 heures avec le format HH:MM.
    1er pb : Lorsque je sélectionne 12:00 , il s'affiche 00.05 dans le TextBox . J'ai noté dans le code du TextBox
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Private Sub TextBox1_Change()
    TextBox1.Value = Format(CDate(TextBox1.Value), "hh:mm")
    End sub
    J'ai réussi à contourner ce pb en mettant '12:00 dans la liste ce qui fait bien apparaitre 12:00 dans le TextBox quand je sélectionne l'heure.
    2ème pb : Lorsque je ferme ce TextBox et que je le rappelle 00:05 s'affiche à nouveau.
    J'ai cherché dans certains forum mais sans succès.
    Auriez-vous une solution pour que 12:00 s'affiche systématiquemnt . (je fais ensuite des test pour que les créneaux ne se chevauchent pas)
    Merci par avance
    MichaSarah

  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
    13 170
    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 : 13 170
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Je viens de faire un test rapide avec un ComboBox et deux TextBox
    Mes heures sont placées en Colonne B & C à partir de la deuxième ligne.
    J'ai essayé avec 2 formats différents et je ne rencontre pas de problème particulier mais j'ai enlever la fonction CDATE.
    Voici mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    Option Explicit
    Private Sub ComboBox1_Change()
     With Me
     .TextBox1 = Format(Range("B" & .ComboBox1.ListIndex + 2), "Long Time")
     .TextBox2 = Format(Range("C" & .ComboBox1.ListIndex + 2), "hh:mm")
     End With
    End Sub
    Private Sub TextBox1_Change()
     ' TextBox1.Value = Format(CDate(TextBox1.Value), "hh:mm")
     TextBox1.Value = Format(TextBox1, "Long Time")
     TextBox2.Value = Format(TextBox2, "hh:mm")
    End Sub
    Private Sub UserForm_Initialize()
     With Me
     .ComboBox1.RowSource = "db"
     End With
    End Sub
    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
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 142
    Par défaut
    Bonjour corona,
    J'ai essayé avec ta solution mais sans succès. J'ai changé les formats d'heure, j'ai refais une liste deroulante mais pour le moment celà ne marche pas. Le seul cas ou celà fonctionne c'est en faisant référence à une cellule bien précise.
    Je mets en pièce jointe mon fichier.
    1°) Pour sélectionner un créneau horaire il faut double cliquer sur une cellule
    2°) Enregistrer avant de sortir
    3°) Les infos sont sauvegardées dans l'onglet caché ainsi que les listes déroulantes.

    Merci


    MichaSarah
    Fichiers attachés Fichiers attachés

  4. #4
    Expert confirmé
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Par défaut
    Bonjour,

    dans une copie, teste ceci :
    lance la macro suivante, ta feuille 2011(2) étant active :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Sub Pansement()
    Dim cell
    Dim pass
     
    For Each cell In Range("AL9:AL35")
       pass = cell.Text
       cell.Clear
       cell.NumberFormat = "@"
       cell.Value = pass
    Next cell
    End Sub
    cette ligne devient inutile :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    'LstDe1.Value = Format(CDate(LstDe1.Value), "hh:mm")
    ensuite quand tu as besoin de travailler sur l'heure, c'est là que tu utilise Cdate(LstDe1) par exemple

    cordialement,

    Didier

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 142
    Par défaut
    Bonjour,
    Merci à vous.

    Salutations
    MichaSarah

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 11/08/2008, 15h25
  2. Comment définir un style dans l'en-tête d'un document ?
    Par bilibou dans le forum Mise en forme
    Réponses: 2
    Dernier message: 01/10/2006, 22h08
  3. Réponses: 5
    Dernier message: 03/08/2006, 08h03
  4. Réponses: 4
    Dernier message: 09/05/2006, 11h33
  5. Réponses: 4
    Dernier message: 22/04/2006, 11h38

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