VBAccess Initialiser Variable Form

Philippe -  
 Philippe -
Je veux initialiser une variable Form dans un module Access pour récupérer le nom (et pas le titre) d'un formulaire.

Le script :

Dim MonForm as Form
With MonForm
MonForm.Name = "Titi"
End With


Et quand je teste ma variable MonForm, elle est désespéremment vide ... Ou est ce que je me trompe ?

6 réponses

  1. blux Messages postés 2046 Date d'inscription   Statut Modérateur Dernière intervention   3 455
     
    Salut,

    la propriété 'name' n'est accessible en création d'un formulaire avec VBA.
    Il n'est pas possible ensuite de le renommer en VBA, seul le renommage par la fenêtre base de données fonctionne.

    Je crains malgré tout de ne pas avoir compris ta demande...

    A+ Blux
     "Les cons, ça ose tout.
    C'est même à ça qu'on les reconnait"
    0
  2. Utilisateur anonyme
     
    With form existant dans le projet
    .Icon = icone
    .Caption = titre
    .Show
    ...
    end with

    form c'est une feuille du projet
    0
  3. mobile75 Messages postés 70 Date d'inscription   Statut Membre 17
     
    salut,
    tu veux recuperer le nom d'un forms ouvert ou fermé ?

    A+
    Essayer.........des fois ça marche............
    0
  4. Philippe
     
    Bonjour,
    Je veux récupérer le nom d'un form ouvert ; ce form contient une combobox avec un Id.
    Le but du jeu est de charger le nom de mon form dans une variable d'où :
    Public MonForm as Variant (il faut que j'utilise ma variable plus loin dans le projet)
    MonForm = Me.Name

    Jusqu'à là, tout va bien....
    Puis je veux ouvrir un deuxième form en utilisant en critère la variable MonForm :
    DoCmd.OpenForm 'MonForm2',,,Id2 = Forms!MonForm![Id]

    Et c'est là que ça coince : Access me renvoie une erreur comme quoi le formulaireMonForm n'existe pas....bien que MonForm ait chargé le nom du formulaire initial...m'ouais.

    J'ai pensé que mon pb venait du type de variable d'où le

    Dim MonForm as Form
    With MonForm
    MonForm.Name = Me.Name
    End With

    Mais ça ne change rien....

    A+
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. WhiteFang Messages postés 2063 Statut Membre 204
     
    ;-)

    C'est pas très clair, tout ça... Faudrait que tu développe un peu plus ton idée, pour nous éviter de partir dans tous les sens...

    Bon, comme ça, même si je me plante, je verrais bien l'utilisation d'une variable objet.... Vois la commande SET, ça t'ouvrira peut-être des portes...

    ;-)

    Wild and Free
    0
  7. Philippe
     
    Bonjour,

    Bien vu ! La solution est toute simple.

    Public MonForm as Form

    Puis un
    Set MonForm = Me pour initialiser la variable avec les caractéristiques du form en cours
    et un
    DoCmd.OpenForm "MonForm2",,, "Id2 ="& MonForm![Id]&""

    Merci à tous pour vos idées...
    0