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 :

Passer nom de formulaire en variable dans fonction publique


Sujet :

VBA Access

  1. #21
    Membre actif
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 092
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 092
    Points : 268
    Points
    268
    Par défaut
    Que ce soit l'une ou l'autre elles donnent une erreur "membre de méthode ou données introuvables" ...

    Quelque chose qui devrait être si simple !

    Donc, aucune solution ...

  2. #22
    Membre averti
    Homme Profil pro
    Amateur
    Inscrit en
    Octobre 2010
    Messages
    205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Amateur

    Informations forums :
    Inscription : Octobre 2010
    Messages : 205
    Points : 360
    Points
    360
    Par défaut
    Citation Envoyé par clickandgo Voir le message
    Donc, aucune solution ...
    Si mais vous ne voulez pas vous comprendre le modèle objet des formulaire, je vois ce que vous voulez faire, mais avant tout vous devez comprendre !

    Un objet n'est pas une simple chaîne de caractères...

    Vous avez un formulaire principal, qui contient un objet container (Cadre), qui lui-même contient un second formulaire.

    Par exemple dans votre code :

    Vous faite référence au contrôle Cadre, en effet "SourceObject" permet de donner le nom du formulaire qui sera gérer dans le contrôle Cadre,

    mais plus loin vous mettez

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    afrm.BtnImprimer.Caption
    qui lui fait référence à un bouton contenu dans l'objet formulaire "devis et factures" contenu dans Cadre

    Vous essayez à la fois de taper dans 2 contrôles de nature différente, c'est comme si vous vouliez changer la couleur d'un bouton et d'une liste en faisant référence à un seul objet

    Donc je vous ai donc aiguillé sur 2 fonctions, qui vous donnent d'une part la référence au contenant (Cadre) et l'autre qui vous donne référence au contenu.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Function Contenant() As SubForm
     
    Set SousFormulaire = Application.Forms("Menu").Controls("Cadre") 
     
     
    End Function
    Ensuite...

    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
    Public Function CreerFacture()
     
    Dim sfCadre As SubForm
    Dim frmCible as Form
    Set sfCadre = Contenant()
     
    'AFrm pour formulaire Cadre
     
    sfCadre.SourceObject = "devis et factures" 'Applique à sfCadre le formulaire "Devis et facture"
    set frmCible = Application.Forms(sfCadre.SourceObject) 'Fait référence au formulaire contenu dans sfCadre
     
    frmCible.Caption = "Création d'un nouveau document Facture"
    frmCible.Controls("TypeDoc").Value = "FACTURE"
    frmCible.Controls("EtatDocument").Value = "Création"
    ....  
    End Function
    Sinon vous pourriez créer un module de classe, pour "fabriquer" vous même un objet reprenant les propriétés des deux objets qui vous intéressent et interagir avec eux.
    Mais ça c'est un autre boulot (mais très intéressant pour comprendre), car il faudra recenser toutes les propriétés des deux objets avec lesquelles vous vous voudrez interagir, et les "mapper" avec le bon objet.

    Pour débuter avec cette piste : http://fauconnier.developpez.com/art...neral/classes/

    Cordialement,
    Pierre.

    Dans un monde passablement absurde, il y a quelque chose qui ne l'est pas, c'est ce qu'on peut faire pour les autres.

    André Malraux


    Ce message vous a aidé ? alors

    Votre souci est résolu ? alors

  3. #23
    Membre actif
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 092
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 092
    Points : 268
    Points
    268
    Par défaut
    Merci beaucoup pour votre aide, je me mets au travail et vous tiens au courant

Discussions similaires

  1. [1.x] passer un variable dans fonction configure (symfony)
    Par saberwer dans le forum Symfony
    Réponses: 1
    Dernier message: 30/08/2010, 11h32
  2. Utilisation variable dans fonction
    Par Jiraiya42 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 29/01/2008, 17h22
  3. passage de variable dans fonction
    Par nicerico dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 01/12/2006, 23h25
  4. variable dans fonction
    Par pierre371 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 16/05/2006, 14h24
  5. Réponses: 1
    Dernier message: 25/09/2005, 14h29

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