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

VBA Access Discussion :

[VBA-A] INSERT INTO + PBL DE DOUBLONS


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    212
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 212
    Par défaut [VBA-A] INSERT INTO + PBL DE DOUBLONS
    Bonjour,

    Voila j'ai un problème lors d'ajout d'elements dans certaines tables.
    Lors de l'ajout dans ma table CLIENTS il me met un message d'erreur qui indique qu'il y a un risque de doublons. Cependant Le type de mon identifiant n'est pas un numero automatique et est généré par moi meme afin de pouvoir reutilisé cet identifiant plus tard dans le code pour recuperer ce dernier comme par exemple si j'utilise une clé etrangere...
    Je n'ai pas trouvé le moyen de le faire avec un numero automatique je ne sais pas comment faire pour qu'il le recupere automatiquement.

    Voici mon MCD :



    J'espere que tout le monde le voit bien lol

    Je suppose qu'il est pas très bien conçu (je sais je ne suis pas specialement doué pour ca ;-)

    Voici maintenant un peu de mon code :

    Partie permettant de generer le numero de client :

    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
     
    b_Enreg = 0
    Num_Cli = 10000
     
     
    Module1.ConnexionBdd
     
     
    Requete_Controle = "SELECT * FROM CLIENTS"
     
    Rec_Controle.Open Requete_Controle, Module1.BdAccess
     
    Rec_Controle.MoveFirst
     
    While Not Rec_Controle.EOF
        nb_Enreg = nb_Enreg + 1
        Rec_Controle.MoveNext
    Wend
     
    Rec_Controle.Close
     
    Num_Cli = Num_Cli + nb_Enreg
     
    Txt_Id_Clt.Text = Num_Cli
    partie permetant l'insertion dans la base :

    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
     
    Requete_Client = "INSERT INTO CLIENTS (Num_Clt,Nom_Clt,Prenom_Clt,Adresse_Clt,Cp_Clt,Ville_Clt,Ddn_Clt,Tel_Clt,Nom_Formule) VALUES ('" & Num_Cli & "','" & Txt_Nom_Clt.Text & "','" & Txt_Prenom_Clt.Text & "','" & Txt_Adr_Clt.Text & "','" & Txt_Cp_Clt.Text & "','" & Txt_Ville_Clt.Text & "','" & Ddn_Clt & "','" & Txt_Tel_Clt.Text & "','" & Formule & "')"
    Rec_Client.Open Requete_Client, Module1.BdAccess
     
    If UserForm1.CheckBox_Conj.Value = True Then
     
     
        Requete_Conjoint = "INSERT INTO CONJOINTS (Nom_Conjoint,Prenom_Conjoint,Ddn_Conjoint,Nom_Formule,Num_Clt) VALUES ('" & Txt_Nom_Clt.Text & "','" & Txt_Prenom_Conj1 & "','" & Ddn_Conj & "','" & Formule_Conj & "','" & Num_Cli & "')"
        Rec_Conjoint.Open Requete_Conjoint, Module1.BdAccess
     
        Requete_Devis = "INSERT INTO DEVIS (Prix_Annuel_Devis,Prix_Mensuel_Devis,Date_Devis,Num_Util,Num_Clt) VALUES (' " & PrixAn_Devis & "','" & PrixMensuel_Devis & "','" & Date & "','" & Login & "','" & Num_Cli & "')"
        Rec_Devis.Open Requete_Devis, Module1.BdAccess
    Else
     
        Requete_Devis = "INSERT INTO DEVIS (Prix_Annuel_Devis,Prix_Mensuel_Devis,Date_Devis,Num_Util,Num_Clt) VALUES (' " & PrixAn_Devis & "','" & PrixMensuel_Devis & "','" & Date & "','" & Login & "','" & Num_Cli & "','" & "')"
        Rec_Devis.Open Requete_Devis, Module1.BdAccess
    End If
    Merci d'avance

  2. #2
    Expert confirmé
    Avatar de ThierryAIM
    Homme Profil pro
    Inscrit en
    Septembre 2002
    Messages
    3 673
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2002
    Messages : 3 673
    Par défaut
    Num_Cli = Num_Cli + nb_Enreg +1

    ceci dit y'a plus joli pour recuperer le nbre d'enregistrement

Discussions similaires

  1. [VBA]INSERT INTO et récupération d'id auto
    Par norkius dans le forum Access
    Réponses: 8
    Dernier message: 24/02/2013, 19h17
  2. ADO - VBA - Requête INSERT INTO
    Par ceres02 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 27/10/2008, 21h54
  3. Syntaxe requete SQL insert into dans VBA
    Par @rkane dans le forum Requêtes et SQL.
    Réponses: 9
    Dernier message: 12/12/2006, 22h03
  4. Réponses: 1
    Dernier message: 18/05/2006, 17h57
  5. [VBA-A] INSERT INTO en vérifiant les données avant !!
    Par Rumeurs dans le forum VBA Access
    Réponses: 9
    Dernier message: 12/04/2006, 14h07

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