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 :

Comment savoir si un formulaire est un sous-formulaire ?


Sujet :

IHM

  1. #1
    Membre à l'essai
    Inscrit en
    Août 2006
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 27
    Points : 15
    Points
    15
    Par défaut Comment savoir si un formulaire est un sous-formulaire ?
    Bonjour à tous,

    J'aimerais savoir comment je peux, à partir d'un formulaire, savoir si celui-ci est un sous-formulaire (s'il a un parent donc). Je connais la propriété Parent mais si je l'appelle sans avoir un formulaire parent, le programme se plante... Je sais également que je pourrais utiliser la gestion d'erreur pour vérifier si le parent existe mais j'aimerais une autre solution si elle existe (je n'aime pas trop devoir provoquer une erreur).

    Avez-vous une idée ?

    Merci.

  2. #2
    Membre expérimenté Avatar de stigma
    Homme Profil pro
    Créateur jeux vidéo
    Inscrit en
    Octobre 2003
    Messages
    1 118
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Créateur jeux vidéo
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 118
    Points : 1 615
    Points
    1 615
    Par défaut
    Question étrange, mais je n'ai peut-être pas saisi la finalité de la demande.
    Si un formulaire est inclus dans un autre formulaire, c'est donc un sous-formulaire. Pareil pour les états.

  3. #3
    Membre à l'essai
    Inscrit en
    Août 2006
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 27
    Points : 15
    Points
    15
    Par défaut
    Justement, le truc, c'est que le formulaire peut être parfois un sous-formulaire et parfois un formulaire normal (donc sans parent). Du coup, les actions de ce formulaires sont différentes selon qu'il est attaché à un autre formulaire en tant que sous-formulaire ou s'il est seul... et pour ca, j'ai besoin de tester si le formulaire est oui ou non un sous-formulaire...

  4. #4
    Membre expérimenté
    Homme Profil pro
    Développeur VBA Access
    Inscrit en
    Avril 2006
    Messages
    1 109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur VBA Access

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 109
    Points : 1 535
    Points
    1 535
    Par défaut
    Bonjour,

    essaie ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Dim IsSbubForm As Boolean
     
    Private Sub Form_Load()
     On Error Resume Next
     IsSubForm=False 
     IsSubForm=Not (Me.Parent Is Nothing)
     err.Clear
    End sub
    Si la variable IsSubForm= True, le formulaire a un parent.

  5. #5
    Membre à l'essai
    Inscrit en
    Août 2006
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 27
    Points : 15
    Points
    15
    Par défaut
    Merci ilank pour ta réponse.

    Ton code marche bien effectivement, par contre, ca utilise la gestion d'erreur. Je cherchais plutôt un moyen de le vérifier sans provoquer une erreur dans le cas où le parent n'existe pas. Je sais que dans ce cas ci, l'erreur est gérée correctement mais je n'aime pas avoir dans mon code quelque chose qui se vérifie par une erreur. Je cherchais un moyen de le vérifier sans utiliser cette technique justement

    Mais s'il n'y a pas d'autre moyen, je ferai avec

  6. #6
    Membre expérimenté
    Homme Profil pro
    Développeur VBA Access
    Inscrit en
    Avril 2006
    Messages
    1 109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur VBA Access

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 109
    Points : 1 535
    Points
    1 535
    Par défaut
    Bonjour,

    ok, on peut essayer en testant la collection Forms. A l'ouverture, Le formulaire principal est ajouté à la collection. En clair, si le dernier élément de la collection Forms n'est pas ton formulaire lors de son chargement, c'est qu'il est ouvert en tant que sous-formulaire.

    Exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     Dim IsSubForm as Boolean
    Private Sub Form_Load()
     IsSubForm= Not (Forms(Forms.Count-1) Is Me)
    End sub

  7. #7
    Membre à l'essai
    Inscrit en
    Août 2006
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 27
    Points : 15
    Points
    15
    Par défaut
    Yes !!!
    Merci ilank, je n'avais absolument pas pensé à ca.

    Un très grand merci

Discussions similaires

  1. Réponses: 3
    Dernier message: 25/07/2015, 09h21
  2. Sous-formulaire dans un sous-formulaire
    Par gorjette dans le forum IHM
    Réponses: 11
    Dernier message: 16/09/2010, 10h13
  3. Réponses: 5
    Dernier message: 06/08/2008, 15h11
  4. Réponses: 0
    Dernier message: 12/05/2008, 19h40
  5. Lien sous-formulaire à un autre sous-formulaire
    Par jehhej dans le forum Access
    Réponses: 4
    Dernier message: 25/01/2006, 08h05

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