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 :

ajouter , modifier enregistrement avec vba


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2008
    Messages
    107
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 107
    Par défaut ajouter , modifier enregistrement avec vba
    Bonjour
    Utilisateur D’Access s, j’ai pour habitude d’ajouter de nouveaux enregistrements via les formulaires grâce au bouton de commande ajouter d’Access.
    Je veux maintenant pouvoir mettre du code vba derrière un bouton pour ajouter, modifier des enregistrements.
    Par exemple j’ai une table nommé Table1 avec 02 champs (champ1, champ2) ;
    J’ai mon formulaire lié avec deux zones de texte liée à la table1 (texte1,texte2) et un bouton de commande
    Sous vb6,
    Voici un code que j’utilisais pour ajouter :data1.recordset.addnew
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    data1.recordset.( ”champ1 ”)=texte1
    data1.recordset.(”champ2 ”)=texte2
    data1.recordset.update
    j’aimerais bien avoir l’équivalent vba au tout autre code permettant d’ajouter , modifier 1 enregistrement d’une table.

    Merci

  2. #2
    Membre émérite Avatar de azertix
    Homme Profil pro
    Technicien d'assistance informatique
    Inscrit en
    Juin 2007
    Messages
    961
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Technicien d'assistance informatique

    Informations forums :
    Inscription : Juin 2007
    Messages : 961
    Par défaut
    Tu trouveras de nombreux sujets qui parlent de ça sur le forum
    Exemples :
    - Avec DoCmd.RunSql : http://www.developpez.net/forums/d56...on-formulaire/
    - Avec DAO : http://www.developpez.net/forums/d56...e-texte-table/

  3. #3
    Membre confirmé
    Inscrit en
    Janvier 2008
    Messages
    107
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 107
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub Commande4_Click()
    Dim rs As Recordset
    Set rs = CurrentDb.OpenRecordset("essai", DB_OPEN_DYNASET)
    rs.AddNew
    rs!numero = Me.Texte0
    rs!poids = Me.Texte2
    rs.Update
    End Sub
    Ce bout de code marche super bien.
    Mais lors de mes différents je constate une chose qui me gène.
    En effet quand je lie mes zones de textes (Texte0 et Texte2) au champ numero et poids de ma table essai via la propriété source de contrôle de la fenêtre de propriété
    Les enregistrements se trouvent veux(02) fois dans la table alors que je n’effectue qu’un seul clic sur le bouton
    Exple : je saisis 1001(dans la zone de texte Texte0) et 15100(dans la zone de texte Texte2)
    Et je retrouve deux fois ces valeurs dans la table.
    Par contre quand je ne lie pas les zones de texte (Texte0 et Texte2) les enregistrements se trouve une seule fois dans la table( comme je le souhaite).
    Voici la structure de ma table essai. Elle comporte 03 champs (id : type numeroAuto( clé primaire) ,numero : type texte, poids :type numero
    Alors Je ne devrais donc plus lier les zones de texte et le formulaire ?
    Comme je le faisais à l’époque ou j’ajoutais les enregistrements avec le bouton ajouter
    Je suis sous Access 2007
    Merci de bien vouloir m’aider à lever cette ambiguté

  4. #4
    Membre émérite Avatar de azertix
    Homme Profil pro
    Technicien d'assistance informatique
    Inscrit en
    Juin 2007
    Messages
    961
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Technicien d'assistance informatique

    Informations forums :
    Inscription : Juin 2007
    Messages : 961
    Par défaut
    Ben moi personnellement, je n'ai jamais eu besoin de lier une zone de texte à quoi que ce soit.
    Je l'ai fait pour des états...
    Après si tu veux afficher les données d'une table, le contrôle le plus approprié est la zone de liste. Dans ce cas, je mets une requête SELECT dans la propriété Contenu de la ZDL.
    Dans ton cas précis, je ne comprends pas trop l'utilité de cette liaison en effet...

  5. #5
    Membre averti
    Homme Profil pro
    Amateur
    Inscrit en
    Octobre 2011
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Amateur
    Secteur : Distribution

    Informations forums :
    Inscription : Octobre 2011
    Messages : 37
    Par défaut Merci !!
    Salut, tout le monde, je suis débutant niveau access et je voulais juste vous dire merci parce qu'avec vos réponse et ce forum j'avance à grand pas dans mon apprentissage !

    Enfin voilà....
    Merci les gars

Discussions similaires

  1. ajouter plusieurs enregistrements avec un bouton
    Par triaguae dans le forum IHM
    Réponses: 3
    Dernier message: 27/05/2008, 16h55
  2. Modifier enregistrement en VBA
    Par gwendk dans le forum Access
    Réponses: 3
    Dernier message: 19/04/2006, 15h08
  3. Réponses: 3
    Dernier message: 07/02/2006, 13h25
  4. Réponses: 9
    Dernier message: 19/12/2005, 15h53
  5. ajouter un enregistrement en vba
    Par xtaze dans le forum Access
    Réponses: 4
    Dernier message: 13/06/2005, 20h30

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