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 :

Nom d'un formulaire variable dans une fonction


Sujet :

VBA Access

  1. #1
    Nouveau membre du Club

    Profil pro
    Inscrit en
    Mai 2003
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 11
    Points : 29
    Points
    29
    Par défaut Nom d'un formulaire variable dans une fonction
    Bonjour,

    J'appelle la même fonction à partir de 4 formulaires différents
    Je souhaiterais rendre le nom du formulaire variable.
    J'ai essayé d'adapter mon code à celui trouvé dans d'autres post mais çà ne fonctionne pas.
    Dans le code ci-dessous, j'essaye de récupérer un champ issu d'un formulaire.
    Le formulaire s'appelle "TEST 1".
    J'ai essayé plusieurs syntaxe mais j'ai des messages d'erreur à chaque fois.
    En mettant le nom du formulaire "non variable" çà fonctionne :
    JRDVERS me ramène ce que je veux.

    Je dois faire une erreur de syntaxe quelque part .. mais ou ?
    Merci de votre aide
    Cordialement


    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
     
    Public Function RECALCULER()
     
    Dim JRDVERS As Integer
    Dim TEST As Integer
    Dim NOMFORM As String
     
    Dim frm As Access.Form
    Set frm = Screen.ActiveForm
     
    NOMFORM = "[" & frm.Name & "]"
    'NOMFORM = frm.Name
    MsgBox (NOMFORM)
     
    'TEST = Day(Forms!NOMFORM.[Date Versement])
    TEST = Day(Forms.NOMFORM.[Date Versement])
    MsgBox (TEST)
     
    JRDVERS = Day(Forms![Test 1].[Date Versement])

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 239
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 239
    Points : 555
    Points
    555
    Par défaut
    Salut,

    Tu dois placer dans un module une variable
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Public Form_Actif As String
    Ensuite, dans le formulaire, avant d'appeler ta function, tu mets

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Form_Actif="Nom du formulaire"
    Et dans ta function, tu fais un test du genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    If Form_Actif="xxxxxxxxxx" then
    code
    code
    endif
    Un conseil, lors de l'ouverture des formulaires, remet Form_Actif=""

    Voilà
    A+

  3. #3
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 640
    Points : 34 355
    Points
    34 355
    Par défaut
    Salut,
    autre alternative :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TEST = Day(Forms(NOMFORM).[Date Versement])

  4. #4
    Nouveau membre du Club

    Profil pro
    Inscrit en
    Mai 2003
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 11
    Points : 29
    Points
    29
    Par défaut
    Merci @ Electrotsat : Mais avec la variable "set frm", j'avais déjà le bon nom du formulaire ...

    et merci @ jpcheck : C'étais la solution !!!


    Merci à vous deux ...

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 03/04/2013, 20h06
  2. Changer nom de variable dans une fonction
    Par noquioz dans le forum Langage
    Réponses: 2
    Dernier message: 10/09/2009, 10h57
  3. [Tableaux] Récuperer variable dans une fonction
    Par amarcil dans le forum Langage
    Réponses: 12
    Dernier message: 12/02/2006, 10h56
  4. Pb de variable dans une fonction :
    Par soad029 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 04/10/2005, 13h54
  5. [AS2] déclarer des variables dans une fonction
    Par ooyeah dans le forum ActionScript 1 & ActionScript 2
    Réponses: 12
    Dernier message: 02/08/2005, 12h50

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