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 :

problème avec la méthode Add!


Sujet :

VBA Access

  1. #1
    Membre à l'essai
    Inscrit en
    Septembre 2010
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 18
    Points : 17
    Points
    17
    Par défaut problème avec la méthode Add!
    Bonjour à tous,
    Je veux ajouter un textBox dynamiquement à mon formulaire Access. Voilà le code VBA:
    Dim tx As TextBox
    Set tx = Me.Controls.Add("MSForms.TextBox.1", "MyTextBox", Visible)
    tx.Visible = True
    à l'exécution, un message d'erreur s'affiche: "Membre de méthode ou de données introuvable".
    quelqu'un peux m'aidez?
    merci d'avance.

  2. #2
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 594
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 594
    Points : 281 907
    Points
    281 907
    Par défaut
    Bonjour,

    Ta syntaxe n'est pas la bonne.

    Vois un exemple dans la FAQ :

    http://access.developpez.com/faq/?pa...reeDynCtrlCode
    SVP ne m'envoyez pas de messages privés pour poser des questions techniques, vous n'aurez pas de réponse !

  3. #3
    Membre à l'essai
    Inscrit en
    Septembre 2010
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 18
    Points : 17
    Points
    17
    Par défaut
    Merci pour votre réponse, mais le lien n'est pas fonctionnel.

  4. #4
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 594
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 594
    Points : 281 907
    Points
    281 907
    Par défaut
    Que veux-tu dire par là ?

    Si moi, je clique sur ce lien, j'atteins cet item de la faq :

    "Comment créer dynamiquement un contrôle dans un formulaire et lui associer du code vba sur un événement ?"
    SVP ne m'envoyez pas de messages privés pour poser des questions techniques, vous n'aurez pas de réponse !

  5. #5
    Membre à l'essai
    Inscrit en
    Septembre 2010
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 18
    Points : 17
    Points
    17
    Par défaut
    Oui c'est vrai! j'ai un problème de connexion. La FAQ du site n'est pas accessible!

  6. #6
    Membre régulier
    Inscrit en
    Août 2008
    Messages
    86
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 86
    Points : 77
    Points
    77
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
     
    Dim tx As control
     
    Set tx = createcontrol("Nom formulaire", acTextbox, , "", "", [Left], [Top], [width], [Height])
     
    'Texte par défaut
     
    tx.defaultvalue = "mon texte"

  7. #7
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 594
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 594
    Points : 281 907
    Points
    281 907
    Par défaut
    Oui c'est vrai! j'ai un problème de connexion. La FAQ du site n'est pas accessible!
    Pour compléter le post de Glherbier, voici ce que dit la FAQ :

    Comment créer dynamiquement un contrôle dans un formulaire et lui associer du code vba sur un événement ?
    auteur : ma_mat
    Tout d'abord, il faut ouvrir le formulaire en mode création.
    Ensuite pour créer un contrôle par le code il faut utiliser la méthode CreateControl de l'objet Application.
    Pour créer une procédure événementielle, il faut utiliser la méthode
    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
    CreateEventProc de l'objet Module. 
     
    Dim ctl As Control
     
    'Crée un contrôle "Groupe d'options" :
    Set ctl = CreateControl("NomFormulaire", acOptionGroup, , NomPag, , 1200, 3800, 6300, 2700)
    With ctl
      'Définit un nom pour le contrôle
      .Name = "Options"
      'Déclare l'événement "Après mise à jour" du contrôle
      .AfterUpdate = "[Event Procedure]"
    End With
     
     
    'Normalement il ne nous reste plus qu'à écrire la procédure
    'événementielle avec Module.CreateEventProc
     
    'Mais étant donné que nous avons créé un groupe d'option
    'il faut maintenant créer à l'intérieur,
    'un contrôle pour chaque option (nous allons pour cela nous servir
    'de l'argument "Parent" de la méthode CreateControl).
    'Créons par exemple un bouton d'option :
     
    Set ctl = CreateControl("NomFormulaire", acOptionButton, , ctl.Name, , 1500, 4000)
    With ctl
      .Name = "option1"
      .OptionValue = 1
    End With
     
     
    'Et maintenant, création du code à exécuter sur AfterUpdate de Options :
     
    Dim mdl As Module
    Dim lng As Long 'Sert à récupérer le numéro de la ligne d'insertion de la procédure
     
    Set mdl = Forms![NomFormulaire].Module
    lng = mdl.CreateEventProc("AfterUpdate", "Options")
    mdl.InsertLines lng + 1, _
      vbTab & _
      "If(option1.value = 2) then MsgBox " & Chr(34) & "Vous avez choisi 1." & Chr(34)
     
    'On libère mémoire allouées aux variables.
    Set ctl = Nothing
    Set mdl = Nothing
    SVP ne m'envoyez pas de messages privés pour poser des questions techniques, vous n'aurez pas de réponse !

  8. #8
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2012
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2012
    Messages : 24
    Points : 12
    Points
    12
    Par défaut
    Bonjour,

    Je relance ce topic qui m'a fortement aidé à créer mes objets dynamiqmement.
    Parcontre j'ai un petit souci. J'ai créé des Textbox grace à ce code mais je voudrai aussi les remplir ou leur mettre une valeur par defaut. Mais je n'ai pas trouvé comment faire.
    Quelqu'un aurait un solution pour régler mon probleme?
    Merci d'avance.
    Cordialement.

Discussions similaires

  1. [Débutant] VBA Excel : problème avec la méthode Add
    Par epsilonzero dans le forum MATLAB
    Réponses: 3
    Dernier message: 20/04/2010, 11h02
  2. [POO] Problème avec setInterval/méthodes d'écriture
    Par Lpu8er dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 18/07/2006, 15h37
  3. [VBA-E] Problème avec un com add in
    Par boosty dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 15/05/2006, 14h24
  4. problème avec la méthode getElementById() dans Firefox
    Par matrouba dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 19/12/2005, 08h55
  5. Problème avec la méthode pack()
    Par tomca dans le forum Langage
    Réponses: 5
    Dernier message: 15/09/2005, 10h58

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