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 :

Atteindre enregistrement selon champ Formulaire [AC-2003]


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
    Novembre 2010
    Messages
    134
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 134
    Par défaut Atteindre enregistrement selon champ Formulaire
    Bonjour,

    D'après le Tutoriel indiqué ici, je suis censé avoir la solution entre les mains. Or, Access résiste impassiblement !

    Voilà le matériel (avant le problème) :
    * Table TSer
    => 4 Champs (CPser, Ser0, Ser1, Ser2)

    * Requête RSer qui reprend tous les champs de TSer, me compte toutes les occurrences différentes en Ser2 et les listes.

    *Formulaire FSer
    => 4 Champs correspondant à ceux de TSer
    CPser, Ser0, Ser2 sont de type Texte.
    Ser1 est de type Table/Requête

    Cas :
    Dans FSer je crée un nouvel enregistrement, donc un nouveau CPser.
    J'indique d'abord mon nouveau texte dans le champ Ser2.
    Puis je choisis une indication(alphabétique) dans le champ Ser1 : c'est une liste déroulante, appuyée sur RSer.
    Enfin, une concaténation se génère automatiquement dans Ser0.

    Remarque :
    Par RSer, le champ-liste Ser1 me renvoie le Ser2 de tous les enregistrements déjà créés auparavant.

    Problème (on y est) :
    Par une action sur bouton, je souhaite que le formulaire FSer s'ouvre sur l'enregistrement dont le Ser2 correspond à mon Ser1.


    D'après le Tuto :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private sub Renvoi_Click() 
        Application.DoCmd.OpenForm "formLivres",,,,acFormAdd,,me.[N°Auteur] 
    End Sub
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    If IsNull(Me.OpenArgs) Then 
        ' Rien à faire 
    Else 
        Me.[N°Auteur]=Clng(Me.OpenArgs) 
    End if
    Je recommence par où, je corrige quoi, s'il vous plaît ?

    Merci beaucoup,
    Bk

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    134
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 134
    Par défaut Eurêka
    Une nouvelle pause air frais+boisson plus un petit coup de musique et la solution revient...
    Il me manquait visiblement les sempiternelles guillemets pour texte...

    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
    Private Sub Bouton_Click()
    On Error GoTo Err_Bouton_Click
     
    Dim stDocName As String
    Dim StLinkCriteriA As String
     
    stDocName = "FSer"
    StLinkCriteriA = "[Ser2]=" & "'" & Me![Ser1] & "'"
     
    DoCmd.OpenForm stDocName, , , StLinkCriteriA
     
    Exit_Bouton_Click:
        Exit Sub
     
    Err_Bouton_Click:
        MsgBox Err.Description
        Resume Exit_Bouton_Click
     
    End Sub
    J'espère que cela aidera tout lecteur éperdu passant...

    Bk

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Atteindre un enregistrement dans sous formulaire
    Par Kyrha dans le forum Access
    Réponses: 9
    Dernier message: 10/11/2018, 09h06
  2. Atteindre enregistrement spécifié dans formulaire
    Par galouluma dans le forum VBA Access
    Réponses: 2
    Dernier message: 05/08/2010, 21h29
  3. Enregistrement selon champ x
    Par nanmer dans le forum SAP Crystal Reports
    Réponses: 1
    Dernier message: 24/02/2009, 09h29
  4. Réponses: 6
    Dernier message: 09/03/2007, 19h33
  5. Réponses: 4
    Dernier message: 28/12/2006, 17h38

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