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 :

Fonction dans sous formulaire


Sujet :

IHM

  1. #1
    Membre régulier
    Inscrit en
    Février 2006
    Messages
    219
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 219
    Points : 108
    Points
    108
    Par défaut Fonction dans sous formulaire
    Hello tout le monde, et merci de m'aider

    J'ai inséré ce code servant à griser les boutons suivant et précédent dans mon sous formulaire en mode unique.

    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
    42
    43
    44
    45
    46
    47
    48
    Private Sub Form_Current()
    Dim X
    MsgBox Me.Name
    X = affprecsuiv(Me.Name)
    End Sub
     
     
    ' Fonction servant à griser les boutons "précédent" ou "suivant" au besoin
    Function affprecsuiv(monform)
    On Error GoTo Err_affprecsuiv
     
    Dim f As Form, s As Recordset
    Set f = Forms(monform)
    Set s = f.RecordsetClone
     
    s.Bookmark = f.Bookmark
    s.MoveNext
     
    If s.EOF Then
     f.Btn_Enr_Suiv.Enabled = 0
    Else
     f.Btn_Enr_Suiv.Enabled = -1
    End If
     
    s.Bookmark = f.Bookmark: s.MovePrevious
    If s.BOF Then
     f.Btn_Enr_Prec.Enabled = 0
    Else
     f.Btn_Enr_Prec.Enabled = -1
    End If
     
    Exit_affprecsuiv:
    Exit Function
     
    Err_affprecsuiv:
    ' Si aucun enregistrement en cours
     If Err = 3021 Then
      If s.RecordCount = 0 Then
       f.Btn_Enr_Prec.Enabled = 0
      Else
       f.Btn_Enr_Prec.Enabled = -1
      End If
     f.Btn_Enr_Suiv.Enabled = 0
     Else
      MsgBox Error$
       End If
     GoTo Exit_affprecsuiv
    End Function

    L'erreur que j'obtiens est: "impossible de trouver le formulaire "nom du sous formulaire" auquel il est fait référence.


    Quelqu'un aurait il une idée? y a t il une facon spéciale pour déclarer un sous formulaire en VBA?

    Merci!

  2. #2
    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,

    La syntaxe est normalement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Forms!formulaire!sous_formulaire!champ
    N'oubliez pas le Tag afin de faciliter la recherche, et en votant cela permet de mieux la cibler.

    Je ne réponds pas aux messages privés s'ils sont liés à une question technique

  3. #3
    Membre régulier
    Inscrit en
    Février 2006
    Messages
    219
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 219
    Points : 108
    Points
    108
    Par défaut
    oui, ca c'est si on entre le nom du formulaire en dur.

    Mais dans mon cas, que mettre à la place du :

    (la variable monform , contenant le nom du sous formulaire dans lequel se trouve les 2 boutons précédents, suivants à griser)

    ?

  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
    Cela peut être de la forme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set f = "Forms!formulaire!" & monform
    N'oubliez pas le Tag afin de faciliter la recherche, et en votant cela permet de mieux la cibler.

    Je ne réponds pas aux messages privés s'ils sont liés à une question technique

  5. #5
    Membre régulier
    Inscrit en
    Février 2006
    Messages
    219
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 219
    Points : 108
    Points
    108
    Par défaut
    en faisant cela, l'erreur obtenue est : objet requis

  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
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set f = Forms("formulaire!" & monform)
    N'oubliez pas le Tag afin de faciliter la recherche, et en votant cela permet de mieux la cibler.

    Je ne réponds pas aux messages privés s'ils sont liés à une question technique

  7. #7
    Membre régulier
    Inscrit en
    Février 2006
    Messages
    219
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 219
    Points : 108
    Points
    108
    Par défaut
    Merci beaucoup pour ton aide, mais ce n est pas encore ca. Voici l'erreur cette fois:

    impossible de trouver le formulaire: Frm_GestionEtudiant!sub_Etudiant_Frm_GestionEtudiant

  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
    Ton sous formulaire est bien utilisé dans un formulaire. Et c'est sur ce sous formulaire (qui est contenu dans ton formulaire) que tu veux faire grisé tes boutons
    N'oubliez pas le Tag afin de faciliter la recherche, et en votant cela permet de mieux la cibler.

    Je ne réponds pas aux messages privés s'ils sont liés à une question technique

  9. #9
    Membre régulier
    Inscrit en
    Février 2006
    Messages
    219
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 219
    Points : 108
    Points
    108
    Par défaut
    exactement !

    Le code que j'ai cité au dessus est le code du sous formulaire "sub_Etudiant_Frm_GestionEtudiant" se trouvant sur le formulaire "Frm_GestionEtudiant"


    à noter que j'utilise exactement le meme code (sauf le nom des boutons qui est différent) sur le formulaire "Frm_GestionEtudiant" et pour lui, ca fonctionne...

  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
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set f = Forms("Forms!formulaire!" & monform)
    N'oubliez pas le Tag afin de faciliter la recherche, et en votant cela permet de mieux la cibler.

    Je ne réponds pas aux messages privés s'ils sont liés à une question technique

  11. #11
    Membre régulier
    Inscrit en
    Février 2006
    Messages
    219
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 219
    Points : 108
    Points
    108
    Par défaut
    Non, dans le formulaire principal , j'utilise ceci:

  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
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set f = Forms("Forms!formulaire!" & monform)
    formulaire : est le nom de ton formulaire.
    monform : est le nom de ton sous formulaire.
    N'oubliez pas le Tag afin de faciliter la recherche, et en votant cela permet de mieux la cibler.

    Je ne réponds pas aux messages privés s'ils sont liés à une question technique

  13. #13
    Membre régulier
    Inscrit en
    Février 2006
    Messages
    219
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 219
    Points : 108
    Points
    108
    Par défaut
    erreur: impossible de trouver le formulaire: Forms!Frm_GestionEtudiant!sub_Etudiant_Frm_GestionEtudiant auquel il est fait référence




    ralala, je trouve vraiment pas la bonne syntaxe

  14. #14
    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
    Remplace f par "Forms!formulaire!" & monform
    N'oubliez pas le Tag afin de faciliter la recherche, et en votant cela permet de mieux la cibler.

    Je ne réponds pas aux messages privés s'ils sont liés à une question technique

  15. #15
    Membre régulier
    Inscrit en
    Février 2006
    Messages
    219
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 219
    Points : 108
    Points
    108
    Par défaut
    cela ne fonctionne toujours pas...


    grrr désolé de t'embeter avec ca mais j'ai vraiment du mal à comprendre pourquoi dans le formulaire ce code fonctionne, alors que le meme code ne fonctionne pas dans ce sous formulaire...

  16. #16
    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
    Peux-tu m'envoyer ton fichier que je regarde !
    N'oubliez pas le Tag afin de faciliter la recherche, et en votant cela permet de mieux la cibler.

    Je ne réponds pas aux messages privés s'ils sont liés à une question technique

  17. #17
    Membre régulier
    Inscrit en
    Février 2006
    Messages
    219
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 219
    Points : 108
    Points
    108
    Par défaut
    Ok, j'allège la base et je t'envoie ca! Merci beaucoup!

  18. #18
    Membre régulier
    Inscrit en
    Février 2006
    Messages
    219
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 219
    Points : 108
    Points
    108
    Par défaut
    Voila.

    Le formulaire principal sur lequel la fonction de grisage des boutons fonctionne s'appelle: Frm_GestionEtudiant

    le sous formulaire ou cela ne fonctionne pas s'appelle: sub_Etudiant_Frm_GestionEtudiant


    hésite pas à me demander si tu ne comprends pas quelque chose.

    Merci!



    ps) je sais que la structure de la DB est déplorable mais je ne suis pas responsable de sa création. On m'a juste chargé de faire une application de présentation des données... malheureusement...
    Fichiers attachés Fichiers attachés

  19. #19
    Membre régulier
    Inscrit en
    Février 2006
    Messages
    219
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 219
    Points : 108
    Points
    108
    Par défaut Eureka!!!
    La réponse était:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set f = Forms("Frm_GestionEtudiant")("sub_Etudiant_Frm_GestionEtudiant").Form

    merci de t etre penché sur mon problème! j'ai enfin trouvé... seul Comme quoi, en persévérant

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 04/05/2007, 12h15
  2. Recherche dans sous formulaires
    Par dfournier dans le forum IHM
    Réponses: 5
    Dernier message: 08/12/2005, 17h43
  3. Calculs dans sous-Formulaire
    Par Bernjean dans le forum Access
    Réponses: 5
    Dernier message: 17/11/2005, 18h29
  4. Pb champ calcule dans sous formulaire
    Par Brial dans le forum Access
    Réponses: 6
    Dernier message: 12/11/2005, 18h33
  5. Réponses: 9
    Dernier message: 22/06/2005, 08h45

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