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 :

Conversion heure décimale en heure normale vba


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 15
    Par défaut Conversion heure décimale en heure normale vba
    Bonjour

    Dans la Feuil1, les cellules A1 à A4 contiennent des heures, la cellule A5 contient le total d’heures
    Respectivement 05 :00 – 12 :00 – 17 :30 – 08 :00
    Avec le format Personnalisé hh :mm le total en cellule A5 affiche 18 :30
    Avec le format Personnalisé [hh] :mm le total en cellule A5 affiche 42 :30
    Jusque là rien d’anormal à la lecture sur différents forums
    Le problème se pose quand je veux afficher le contenu de la cellule A5 dans l’Userform1
    Pour le TextBox1 et pour le TextBox2
    Avec le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    UserForm1.TextBox1 = Worksheets(1).Cells(5, 1).Value
    J’obtiens Avec le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    UserForm1.TextBox2 = Format(Worksheets(1).Cells(5, 1).Value, ("[hh]:mm"))
    J’obtiens : (pourquoi 2points et 12 ????)
    Après plusieurs essais en changeant le format, en supprimant Value en passant pas une variable intermédiaire rien n’y fait.
    Merci d’avance à ceux et celles qui m’apporteront leurs compétences pour résoudre ce problème.
    Cordialement votre.

  2. #2
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    bonjour
    test ca
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    UserForm1.TextBox1 = Worksheets(1).Cells(5, 1).text
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 15
    Par défaut conversion heure décimale en heure normale vba
    Je tiens à remercier patricktoulon pour la rapidité de réponse et qui fonctionne parfaitement.
    A 71 ans mes neurones ne fonctionnent plus comme avant.
    Toutefois je ne comprends pas pourquoi mettre .Text alors qu'il est dit sur les forums que c'est une variable décimale Long.
    C'est pas très important ...l'essentiel c'est que ça marche
    Merci
    Informatiquement votre

  4. #4
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    re
    bonsoir

    que tu rentre 123546789 ou "toto mange des bannanes " ton textbox recois du texte et sera du texte (STRING)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    TextBox1 = [A1].Value
    MsgBox TypeName(TextBox1.Value)
    TextBox1 = [A1].Text
    MsgBox TypeName(TextBox1.Value)
    maintenant ta cellule peut etre formatée autrement dit sa valeur n'est pas ce qu'elle affiche
    donc si tu met .value tu aura sa valeur et si tu met .text tu aura ce que tu vois dans la cellule

    en effet on ne peut pas calculer la valeur d'un textbox avec une autre valeur justement parcequ'un textbox te renverra toujours un string
    pour palier a ca c'est tout simple tu converti

    La_somme= clng(textbox1)+clng(textbox2)

    tu peux utiliser Val ou Cdbl
    le mieux c'est cdbl au cas ou il y aurait des decimales
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

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

Discussions similaires

  1. [Débutant] Conversion heure décimale -> réel
    Par lucazzo dans le forum C#
    Réponses: 4
    Dernier message: 13/06/2013, 10h18
  2. [XL-2003] Conversion nombre décimal en heure
    Par anonymous1.0 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 03/02/2011, 12h54
  3. [VxiR2] Transformer heures décimales en heures minutes
    Par nat54 dans le forum Deski
    Réponses: 4
    Dernier message: 18/02/2010, 08h29
  4. Conversion heures minutes en heures centièmes
    Par shaman262 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 24/10/2005, 17h53
  5. [CR] pb (concaténation/Conversion/Addition) sur date/heure
    Par marvel dans le forum SAP Crystal Reports
    Réponses: 1
    Dernier message: 20/12/2004, 15h31

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