Userform Excel et requête sql
cinimod
Messages postés
1
Statut
Membre
-
Armojax Messages postés 1916 Date d'inscription Statut Membre Dernière intervention -
Armojax Messages postés 1916 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
je récupère des info stocké dans Access dans un usrform en vba (Excel). Tout va bien sauf un truc.
Si j'essaie de récupérer à l'aide d'une instruction Sql un champ de type Heure le résultat est incompréhensible.
Ex: Dans Access 2:30 heure réduite
Valeur retournée dans un textbox vba Excel 1,3888888889E-02 comment le reconvertir. sous la forme 2:30
les chiffres sont à titre d'exemple.
je récupère des info stocké dans Access dans un usrform en vba (Excel). Tout va bien sauf un truc.
Si j'essaie de récupérer à l'aide d'une instruction Sql un champ de type Heure le résultat est incompréhensible.
Ex: Dans Access 2:30 heure réduite
Valeur retournée dans un textbox vba Excel 1,3888888889E-02 comment le reconvertir. sous la forme 2:30
les chiffres sont à titre d'exemple.
A voir également:
- Userform Excel et requête sql
- Word et excel gratuit - Guide
- Liste déroulante excel - Guide
- Si et ou excel - Guide
- Déplacer colonne excel - Guide
- Excel trier par ordre croissant chiffre - Guide
2 réponses
Bonjour,
Un problème de format, au moment de la lecture, la variable qui reçoit la valeur doit être de type Variant, ensuite par des tests précis tu pourra trouver le type de cette valeur et y trouvez la date. Je n'ai pas l'exercice sous les yeux mais j'ai fait cette manoeuvre.
essaie des commandes de str, mid etc ou date, month, year,day...
Une lecture doit toujours être global et contrôlé à mon avis.
Lupin
Un problème de format, au moment de la lecture, la variable qui reçoit la valeur doit être de type Variant, ensuite par des tests précis tu pourra trouver le type de cette valeur et y trouvez la date. Je n'ai pas l'exercice sous les yeux mais j'ai fait cette manoeuvre.
essaie des commandes de str, mid etc ou date, month, year,day...
Une lecture doit toujours être global et contrôlé à mon avis.
Lupin
Bonjour cinimod,
Les dates et les heures étant gérées comme des nombres, c'est un nombre que tu récupères dans Excel.
Il faut faire un CDate(1.3888888889E-02) Résultat : 00:20:00
Le fait que tu aies une virgule et non pas un point laisse penser que tu pourrais recevoir du texte. Si c'est le cas :
Texte = FournitureAccess ("1,3888888889E-02")
Texte = Replace(Texte, ",", ".") ("1.3888888889E-02")
Valeur = CDbl(Texte) (0.013888888889)
Résultat = CDate(Valeur) (#00:20:00#)
Essaie si c'est ça.
Armojax.
Les dates et les heures étant gérées comme des nombres, c'est un nombre que tu récupères dans Excel.
Il faut faire un CDate(1.3888888889E-02) Résultat : 00:20:00
Le fait que tu aies une virgule et non pas un point laisse penser que tu pourrais recevoir du texte. Si c'est le cas :
Texte = FournitureAccess ("1,3888888889E-02")
Texte = Replace(Texte, ",", ".") ("1.3888888889E-02")
Valeur = CDbl(Texte) (0.013888888889)
Résultat = CDate(Valeur) (#00:20:00#)
Essaie si c'est ça.
Armojax.