1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    avril 2017
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 20
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : avril 2017
    Messages : 29
    Points : 14
    Points
    14

    Par défaut Récupérer la date puis l'heure d'un champ date et heure

    Bonjour,

    Je viens vers vous car je suis bloqué sur un point bien que ça ne me semble pas si compliqué...

    Mon code doit importer des données Excel dans une table, ca ça passe, je le fais avec

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.TransferSpreadsheet acImport,
    Puis je dois ajouter deux colonnes, la ça va aussi, je fais via :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ALTER TABLE table_name ADD column_name datatype;
    ou via

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     Set fieldH = tbl.CreateField("heure_amb", dbDate)


    J'arrive maintenant au point problématique... je dois remplir ces 2 champ (1 date et 1 heure) à partir d'un seul champ date et heure.

    J'ai essayé plein de choses trouvées ici ou ailleurs mais sans succès...

    Merci d'avance aux gens qui m'aideront sur ce problème!

    Johan

  2. #2
    Rédacteur/Modérateur
    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    août 2004
    Messages
    5 405
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : août 2004
    Messages : 5 405
    Points : 10 613
    Points
    10 613
    Billets dans le blog
    6

    Par défaut

    Bonjour,

    Essaie avec les fonctions DateValue et Timevalue.

    Cdlt,
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information en abondance et sur le forum une aide précieuse vous sera également fournie gracieusement.
    Pour éviter un monde ou prendre est plus facile qu'apprendre.


    Si vous souhaitez mettre en place une gestion de planning, une gestion de stock, de ventes/achats ou tout autre application Office je peux vous proposer mes services.
    Pour cela n'hésitez pas à me contacter par courriel ou mp.

    Mes tutoriels et contributions sur ma page personnelle.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    avril 2017
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 20
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : avril 2017
    Messages : 29
    Points : 14
    Points
    14

    Par défaut

    Bonjour User,

    Déjà merci pour ta réponse

    Comment puis-je faire pour intégrer dans TimeValue ou DateValue la valeur de mon champ ?

    Voivi mon code, "dateheure" ne rend rien ce qui n'est pas surprenant...

    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
     
    Dim Db As DAO.Database
    Dim tbl As DAO.TableDef
    Dim dateheure As DAO.Field
     
    Set Db = CurrentDb
    Set tbl = Db.TableDefs("Ambiance_inter")
     
    Dim date_amb As Date
    Dim heure_amb As Date
     
        Set fieldH = tbl.CreateField("heure_amb", dbDate)
        Set fieldD = tbl.CreateField("date_amb", dbDate)
           tbl.Fields.Append fieldH
           tbl.Fields.Append fieldD
           tbl.Fields.Refresh
     
    dateheure = "SELECT [Date et heure] FROM Ambiance_inter"
     
    heure_amb = TimeValue(dateheure)
    date_amb = DateValue(dateheure)
     
    heure_rempl = "UPDATE Ambiance_inter SET heure_amb = #" & heure_amb & "#"
    date_rempl = "UPDATE Ambiance_inter SET date_amb= #" & date_amb & "#"
     
        DoCmd.RunSQL heure_rempl
        DoCmd.RunSQL date_rempl
     
    End Sub
    Dans l'attente de votre réponse, merci d'avance

  4. #4
    Rédacteur/Modérateur
    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    août 2004
    Messages
    5 405
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : août 2004
    Messages : 5 405
    Points : 10 613
    Points
    10 613
    Billets dans le blog
    6

    Par défaut

    Bonjour,

    Essayez de vous baser sur ce 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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    Dim Db As DAO.Database
    Dim tbl As DAO.TableDef
    Dim fieldH As DAO.Field,fieldD As DAO.Field
     
    Set Db = CurrentDb
    Set tbl = Db.TableDefs("Ambiance_inter")
     
    Set fieldH = tbl.CreateField("heure_amb", dbDate)
    Set fieldD = tbl.CreateField("date_amb", dbDate)
    tbl.Fields.Append fieldH
    tbl.Fields.Append fieldD
    tbl.Fields.Refresh
     
    ' Libérer les variables
     
    Set fieldH = nothing
    Set fieldD = nothing
     
    set tbl = nothing
     
    db.close
    set db=nothing
     
    date_heure_rempl = "UPDATE Ambiance_inter SET heure_amb = TimeValue([Date et heure]), date_amb = DateValue([Date et heure]) ;"
     
    DoCmd.RunSQL date_heure_rempl
     
    End Sub
    Sous réserve que les champs "heure_amb" et "date_amb" ne soient pas déjà créés...

    Cdlt,
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information en abondance et sur le forum une aide précieuse vous sera également fournie gracieusement.
    Pour éviter un monde ou prendre est plus facile qu'apprendre.


    Si vous souhaitez mettre en place une gestion de planning, une gestion de stock, de ventes/achats ou tout autre application Office je peux vous proposer mes services.
    Pour cela n'hésitez pas à me contacter par courriel ou mp.

    Mes tutoriels et contributions sur ma page personnelle.

  5. #5
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    avril 2017
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 20
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : avril 2017
    Messages : 29
    Points : 14
    Points
    14

    Par défaut

    Bonjour,

    Merci de ta réponse,

    Super ça fonctionne super bien !

    Pour ma part j'avais trouvé ceci :

    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    Dim Db As DAO.Database
    'Dim rst As Recordset
     
    'Set Db = CurrentDb
     
    'Dim a As Long
     
    'DoCmd.SetWarnings False
     
    '   Do While Not rst.EOF
     
    '    a = 1
     
    '    heure_rempl = "UPDATE Ambiance_inter SET heure_amb = #" & Format(rst![Date et heure], "hh:nn") & "# WHERE num =  " & a & ""
    '    date_rempl = "UPDATE Ambiance_inter SET date_amb = #" & Format(rst![Date et heure], "mm/dd/yyyy") & "# WHERE num = " & a & ""
     
    '    DoCmd.RunSQL heure_rempl
    '    DoCmd.RunSQL date_rempl
    '    a = a + 1
     
    '    rst.MoveNext
     
    '    Loop
     
    'rst.Close
     
    'DoCmd.SetWarnings True
    Mais c'est extrêmement long...

    Encore merci pour ton aide

    Johan

  6. #6
    Rédacteur/Modérateur
    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    août 2004
    Messages
    5 405
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : août 2004
    Messages : 5 405
    Points : 10 613
    Points
    10 613
    Billets dans le blog
    6

    Par défaut

    Oui, dans le code que je t'ai donné tout se fait au niveau de la requête, donc tu n'as pas besoin de faire une correspondance avec le numéro dans une boucle, et tu évites d'exécuter autant de requêtes que d'enregistrements (et même le double en fait )

    Cdlt,
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information en abondance et sur le forum une aide précieuse vous sera également fournie gracieusement.
    Pour éviter un monde ou prendre est plus facile qu'apprendre.


    Si vous souhaitez mettre en place une gestion de planning, une gestion de stock, de ventes/achats ou tout autre application Office je peux vous proposer mes services.
    Pour cela n'hésitez pas à me contacter par courriel ou mp.

    Mes tutoriels et contributions sur ma page personnelle.

  7. #7
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    avril 2017
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 20
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : avril 2017
    Messages : 29
    Points : 14
    Points
    14

    Par défaut

    Oui c'est ca et c'est beaucoup mieux ^^

    Merci !

  8. #8
    Rédacteur/Modérateur
    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    août 2004
    Messages
    5 405
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : août 2004
    Messages : 5 405
    Points : 10 613
    Points
    10 613
    Billets dans le blog
    6

    Par défaut

    De rien,

    Moi aussi je cherche toujours le plus simple
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information en abondance et sur le forum une aide précieuse vous sera également fournie gracieusement.
    Pour éviter un monde ou prendre est plus facile qu'apprendre.


    Si vous souhaitez mettre en place une gestion de planning, une gestion de stock, de ventes/achats ou tout autre application Office je peux vous proposer mes services.
    Pour cela n'hésitez pas à me contacter par courriel ou mp.

    Mes tutoriels et contributions sur ma page personnelle.

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

Discussions similaires

  1. ajouter l'heure dans les champs DATE des dashlet
    Par jejeman dans le forum SugarCRM
    Réponses: 0
    Dernier message: 07/04/2015, 10h46
  2. Réponses: 11
    Dernier message: 12/02/2013, 15h48
  3. [VxiR2] Extraire l'heure d'un champ date
    Par amraguts dans le forum Designer
    Réponses: 2
    Dernier message: 15/07/2011, 11h31
  4. Extraire Heure d'un champ date
    Par chris81 dans le forum SQL
    Réponses: 7
    Dernier message: 10/06/2008, 09h08
  5. Insérer une heure dans un champs date
    Par erox44 dans le forum SQL
    Réponses: 7
    Dernier message: 22/04/2008, 12h25

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