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 :

VBA Ajout enregistrement dans une table à partir d'un formulaire Access


Sujet :

Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Août 2009
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 10
    Par défaut VBA Ajout enregistrement dans une table à partir d'un formulaire Access
    Bonjour,
    J'ai un sous formulaire dans lequel j'ai des information que je souhaiterai récupéré et mettre à jour dans une table via une table. (Je n'ai pas lié le formulaire à la table car celle-ci doit récupérer des information du formulaire (Comme le Code_Customer). Je n'arrive pas à récupérer les champs du formulaire, alors j'ai crée une requête "MAJ_BRAND_TEST" qui récupère les valeurs du formulaire. Voici les différents champs : CODE_COMPANY, CODE_VISITE, CODE_BRAND, TURNOVER (Il s'agit d'une selection réduite)

    La table à mettre à jour se nome "DBO_K_MAIN_BRAND" Les champs correspondant sont : "Code_Company", "Code_Visite", "Code_Brand", "CA"

    Voici le code que j'ai tapé :

    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
    Private Sub btAjout_Click()
    'MAJ de la TABLE
     
    Dim myRS1 As New ADODB.Recordset
    Dim myRS2 As String
     
    myRS1.Open "DBO_K_MAIN_BRAND", CurrentProject.Connection, adOpenDynamic, adLockOptimistic 'Ouvre la table de destination
    myRS2 = " SELECT CODE_COMPANY, CODE_VISITE, CODE_BRAND, TURNOVER FROM MAJ_BRAND_TEST " 'ouvre la table d'origine
     
    Dim rstBp As Recordset
    Set rstBp = CurrentDb.OpenRecordset(myRS2)
     
    'Parcours du RS pour ajouter à table DBO_K_MAINBRAND
    Do Until rstBp.EOF
    With myRS1
    .AddNew Array("Code_Company", "Code_Visite", "Code_Brand", "CA"), _
    Array(rstBp("Code_Company"), rstBp("Code_Visite"), rstBp("Code_Brand"), rstBp("Turnover")) 'Champs de Destination
    .Update
    End With
     
    rstBp.MoveNext
    Loop
     
    'Fermeture des recordsets
    myRS1.CLose
    rstBp.CLose
     
    Set myRS1 = Nothing
    Set rstBp = Nothing
     
     
    End Sub
    Le code erreur que j'ai est : erreur d'execution 3067 : la requête doit être construite à partir d'au moins une table ou une requête source

    J'espère vraiment que quelqu'un va pouvoir m'aider. J'ai cherché sur internet et essayé plusieurs code mais je n'y arrive pas!

    En vous remerciant par avance

    PS : SVP expliquez bien, je suis un débutant en développement.

    Cordialement

    Olivier

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Août 2009
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 10
    Par défaut
    Si quelqu'un a une idée svp.

    Merci par avance

Discussions similaires

  1. Réponses: 4
    Dernier message: 17/07/2013, 09h18
  2. Ajouter données dans une table à partir d'un formulaire
    Par Alex1407 dans le forum Macros Access
    Réponses: 0
    Dernier message: 12/06/2013, 15h46
  3. Réponses: 7
    Dernier message: 14/03/2009, 11h36
  4. Ajout enregistrement dans une table
    Par pkrvz dans le forum VBA Access
    Réponses: 18
    Dernier message: 15/05/2008, 22h11
  5. Réponses: 2
    Dernier message: 08/06/2006, 00h10

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