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

Access Discussion :

Insertion d'une date dans une table avec vba


Sujet :

Access

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2005
    Messages : 105
    Points : 68
    Points
    68
    Par défaut Insertion d'une date dans une table avec vba
    Bonjour,

    Je cherche à insérer une date dans une table via VBA Access (lors de la saisie d'une demande dans la table Demandes via un formulaire, insertion automatique d'une tâche dans la table Taches).

    J'ai essayé de tenir compte de tout ce qu'il faut, #date#, format américain, etc... mais j'ai toujours le message d'erreur suivant:

    Erreur d'execution '-2147217913 (80040e07)'
    Erreur de syntaxe dans la date dans l'expression '#02.18.2006#'.

    Est-ce que l'un d'entre vous à une idée ? Mon code est ci-dessous et déclenché après MAJ du formulaire de saisie de la demande.

    Merci d'avance et salutations.

    ________________________________


    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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    'Ajout d'une tâche dans la table Taches
     
    Public Sub ajoutTache()
     
    ' Connexion à la BD
    Dim cnn As ADODB.Connection
    Set cnn = New ADODB.Connection
     
    Dim strCnn As String
    strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
             "Data Source=c:\WorStat\WorStatData.mdb;"
     
    cnn.Open strCnn
     
    'Insertion d'une tâche
    Dim cmdInsert As New ADODB.Command
    Dim strInsert As String
     
    Dim ID As Long
    Dim etat As Boolean
     
    ID = genereIDTache(cnn)
    etat = False
     
    strInsert = "INSERT INTO Taches (Numero,Num_Demande,IDTache,DateExecution,EstTerminee) VALUES (" & ID & "," & Screen.ActiveForm!ztIDDemande & "," & ID & ",#" & Format(Screen.ActiveForm!ztDateDebutTraitement, "mm/dd/yyyy") & "#," & etat & ")"
     
     
    cnn.BeginTrans
    With cmdInsert
        .ActiveConnection = cnn
        .CommandText = strInsert
        .CommandType = adCmdText
        .Execute
    End With
     
    cnn.CommitTrans
     
    cnn.Close
    Set cnn = Nothing
     
    End Sub
    mod : cafeine,

  2. #2
    Membre éprouvé
    Avatar de keita
    Homme Profil pro
    Inscrit en
    Novembre 2002
    Messages
    881
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations forums :
    Inscription : Novembre 2002
    Messages : 881
    Points : 1 121
    Points
    1 121
    Par défaut
    salut
    dans ceci:
    Erreur de syntaxe dans la date dans l'expression '#02.18.2006#'.
    ta date est notée avc des points; essai avc des barres;
    i.e comme: 02/18/2006
    @+

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2005
    Messages : 105
    Points : 68
    Points
    68
    Par défaut
    Salut Keita,

    merci pour la réponse.

    C'est effectivement à cause des "points" au lieu des "/". POur que ça fonctionne, je dois changer les paramètres régionnaux (format de la date) pour que ça fonctionne mais ça ne me convient pas.

    Je pensais qu'en formatant la date comme ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Format(Screen.ActiveForm!ztDateDebutTraitement, "mm/dd/yyyy")
    la conversion était faite; ce n'est pas le cas.

Discussions similaires

  1. [XL-2007] Afficher une checkbox dans une feuille si une checkbox d'une autre feuille est cochée
    Par JessieCoutas dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 18/08/2009, 13h35
  2. portée d'une variable dans une fonction dans une méthode
    Par laurentg2003 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 29/06/2009, 19h05
  3. [POO] dans une classe, appeler une fonction dans une méthode
    Par arnaudperfect dans le forum Langage
    Réponses: 3
    Dernier message: 26/08/2007, 23h04
  4. Envoyer une formulaire dans une page dans une Frame
    Par zooffy dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 29/06/2007, 10h13
  5. Recherche une valeur d'une cellule dans une colonne d'une autre feuille
    Par kourria dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/06/2007, 13h48

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