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

IHM Discussion :

aide sur formulaire


Sujet :

IHM

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2012
    Messages : 4
    Points : 1
    Points
    1
    Par défaut aide sur formulaire
    Bonjour;
    Je suis en train d'essayer une petite application sous Access :
    j'ai deux formulaires qui sont en relation ouvrage et auteur
    via le champ nomauteur lorsque je suis sur le formulaire ouvrage.
    Voulant ajouter un nouveau livre Access lance un message "vous ne pouvez ajouter..." alors je copie le nom de l'auteur et j'ai creé une macro qui ouvre le formulaire "auteur" sur le 1 er enregistrement puis je vais sur le dernier enregistrement et je colle le nom et j'ai creé une macro qui ferme ce dernier formulaire.
    Le travail que je veux faire: ne plus copier et que le formulaire auteur s'ouvre sur le dernier enregistrement.
    Merci pour votre aide

  2. #2
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Novembre 2012
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2012
    Messages : 16
    Points : 26
    Points
    26
    Par défaut
    Bonjour,

    Je peux t'aider pour le deuxième point :

    - Ouvrir le formulaire en mode création
    - Clic droit -> propriété du formulaire
    - Onglet données et tu remplis le champs "tri par" la case d'après te permet d'effectué ce tri au chargement il faut donc mettre "oui"

    Pour ton histoire de copie/colle je ne suis pas sur d'avoir tout compris

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2012
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Bonjour, Tradul

    Merci pour l'effort mais je pense que je me suis mal exprimé
    c'est pour cela que je vais reformuler :
    j'ai deux formulaires ouvrage et auteur qui ont un champ en commun :
    nom_auteur sujet de relation un à plusieurs lorsque je veux ajouter
    un nouveau livre j'ouvre le formulaire ouvrage une fois que je saisie
    un nom d' auteur qui ne figure pas dans la table auteur access lance
    un message "vous ne pouvez ajouter ou modifier l'enregistrement car l'enregistrement associé est requis dans la table auteur alors comment
    j'operais :sur le formulaire ouvrage j'ai crée une macro qui ouvre le formulaire auteur
    une fois le message reçu je copiais le nom de l'auteur et j'excute la macro
    le formulaire auteur s'ouvre je pars vers le dernier enregistrement et je copie le nom de l'auteur et je ferme tout ceci est long je veux le faire en un seul clic
    même si vous proposer un code vba je pourrai assimiler :

  4. #4
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 429
    Points : 58 222
    Points
    58 222
    Billets dans le blog
    11
    Par défaut
    Salut,
    Tes formulaires sont alimentés pas des tables ou des requêtes ?

    @+.

  5. #5
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2012
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Salut zoom61;
    par des tables

  6. #6
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 429
    Points : 58 222
    Points
    58 222
    Billets dans le blog
    11
    Par défaut
    Salut,

    Vu ce que je lis, cela me semble normal. Il faut que le champ auteur soit créé dans la table auteur pour pouvoir l'utiliser dans la table ouvrage.
    Si cela ne te convient pas, il faut que tu revois ta façon de faire, car les deux formulaires fonctionnent à ce que j'ai lu correctement.


    @+.

  7. #7
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2012
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Salut zoom61 ;

    moi aussi je suis sûr que ça fonctionne bien mais je veux que ça soit automatique comme j'ai indiqué dans ma question jai essayé ce code mais ça ne marche pas

    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
    Private Sub nomuteur_NotInList(NewData As String, Response As Integer)
     Dim dbsgest As DAO.Database
       Dim rstaut As DAO.Recordset
       Dim intAnswer As Integer
     
     
       intAnswer = MsgBox("L'auteur - " & Me.nomauteur.Text & " - n'est pas dans la list voulez vous l'ajouter ?", _
          vbQuestion + vbYesNo, "Confirmation d'ajout d'auteur")
     
       If intAnswer = vbYes Then
     
          ' Add auteur stored in NewData argument to the auteur table.
          Set dbsgest = CurrentDb
          Set rstaut = dbsgest.OpenRecordset("nomauteur")
          rstaut.AddNew
          rstaut!nomauteur = NewData
          rstaut.Update
     
          Response = acDataErrAdded         ' Requery the combo box list.
     
     
     
       rstaut.Close
       dbsgest.Close
     
      Set rstaut = Nothing
       Set dbsgest = Nothing
     
     
        MsgBox "Auteur ajouté avec succes", vbInformation, "Confirmation"
     
        Else
     
             ' Require the user to select an existing nomauteur. et désactive le message pas dans liste
     
               Response = acDataErrContinue
     
        Exit Sub
     End If
    Me.Requery
    End Sub

  8. #8
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 429
    Points : 58 222
    Points
    58 222
    Billets dans le blog
    11
    Par défaut
    Salut,

    Le code est correct, sauf sur cette ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set rstaut = dbsgest.OpenRecordset("nomauteur")
    qui devrait avoir là forme suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set rstaut = dbsgest.OpenRecordset("insert into table values ('" & me.nomauteur.value & "', etc.)")
    @+.

  9. #9
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Plusieurs choses :

    1 - Tu dis que ton code ne fonctionne pas, pourquoi ? Un message d'erreur, si oui sur quelle ligne ?
    2 - Dans ton recordset tu mets nomauteur, hors c'est si je ne me trompe pas le nom du champ et non le nom de ta table, c'est ta table qui doit être la source de ton recordset, ou une requête de type Select.

    @Zoom61

    Pourquoi mettre une requête Insert dans un recordset ? Cela ne sert strictement à rien, car il y a les méthodes d'ajout ensuite.
    Un recordset doit être alimenté par une requête de type Select.

    Si tu veux utiliser une requête Insert, il faut la lancer directement sans Recordset avec un code du style.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CurrentDb.Execute "insert into table va...
    Philippe

  10. #10
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 429
    Points : 58 222
    Points
    58 222
    Billets dans le blog
    11
    Par défaut
    Citation Envoyé par Philippe JOCHMANS Voir le message
    @Zoom61

    Pourquoi mettre une requête Insert dans un recordset ? Cela ne sert strictement à rien, car il y a les méthodes d'ajout ensuite.
    Un recordset doit être alimenté par une requête de type Select.
    J'ai juste repris son fonctionnement, et dans sa façon de faire il n'insérait que la donnée aucune indication sur la table.

    @+.

  11. #11
    Invité
    Invité(e)
    Par défaut
    Re

    Sauf que tu as mélangé deux méthodes différentes.

    Philippe

  12. #12
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 429
    Points : 58 222
    Points
    58 222
    Billets dans le blog
    11
    Par défaut
    Citation Envoyé par Philippe JOCHMANS Voir le message
    Re

    Sauf que tu as mélangé deux méthodes différentes.

    Philippe
    Exact tu as aussi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.RunSQL "insert into table values ('" & me.nomauteur.value & "', etc.)"
    @+.

  13. #13
    Invité
    Invité(e)
    Par défaut
    Tout à fait.

    Sauf que le DoCmd.RunSQL implique la suppression des avertissements ("Vous allez ajouter etc...), et non la méthode CurrentDb.Execute.

    Personnellement j'utilise la deuxième méthode, car plus pratique pour moi, car je l'utilise également en VB6 (avec un petit aménagement vers le CurrentDb).

    Philippe

Discussions similaires

  1. Réponses: 0
    Dernier message: 12/02/2014, 15h39
  2. Réponses: 2
    Dernier message: 17/08/2008, 18h57
  3. Aide sur Formulaire et sous formulaire
    Par rutayisire dans le forum IHM
    Réponses: 1
    Dernier message: 22/04/2008, 12h57
  4. aide sur formulaire
    Par msarsari dans le forum Access
    Réponses: 3
    Dernier message: 19/08/2006, 13h58
  5. Aide sur formulaire d'authentification
    Par jeffrey_06 dans le forum Langage
    Réponses: 3
    Dernier message: 04/04/2006, 11h26

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