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

Macros et VBA Excel Discussion :

Appel de controle qui se crée dynamiquement dans un Userform.


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    pharmacien
    Inscrit en
    Septembre 2016
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Pérou

    Informations professionnelles :
    Activité : pharmacien
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Septembre 2016
    Messages : 42
    Par défaut Appel de controle qui se crée dynamiquement dans un Userform.
    Bonjour a Forum, bonjour a tous,

    Ma premiere question sur ce forum pcq je suis un peu perdu...

    A l'initialisation de mon usf j´ai des textbox qui se créent dynamiquement. Ce que je cherche a faire cést lors d´un évenement cmd clik, appeler ces txtbox et en fonction de leur valeur (qui doit etre numerique) je crée de nouveux textbox et appelle des fonctions pour determiner leur valeur...

    Intuitivement j´ai fait le code suivant mais je nárrive pas a appeler ces txtbox... et du coup je suis un peu bloqué sur mon code... (precision mes variables sont déclarées en debut de module)

    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
    Private Sub CmdCalc_Click()
    NbLignes = Sheets(2).Range("A1", Selection.End(xlDown)).Cells.Count
    For Each Ctrl In Me.Controls
    '************ premier soucis -> je n'arrive pas a appeler mes controle qui se créent dynamiquement a l'initialisation de mon usf et agir en fonction de leur valeur
       If Ctrl.Name Like "TxtSelladas*" <> "" And Ctrl.Name Like "TxtFrac*" <> "" Then
            Set CollectTxt = New Collection
            For i = 2 To NbLignes
            Set Obj = Me.Controls.Add("forms.textbox.1")
                With Obj
                    .Name = "TxtCantSelladas" & i
                    .Object.Value = Selladas("TxtCantPract" & i, "TxtFrac" & i, "TxtSelladas" & i) 
                    .Left = 644
                    .Top = 22 * i + 4
                    .Width = 22
                    .Height = 16
                    .Enabled = False
                    .TextAlign = fmTextAlignCenter
                End With
            Set Cl = New Clase1
            Set Cl.textbox = Obj
            CollectTxt.Add Cl
            Next i
        Else
        MsgBox "Todos los campos de Sellada y de Fracción deben ser llenados!", 48, "Mensaje de error"
       End If
    Next Ctrl
    Je pense que ma solucion est au travers d´un module de classe avec un evenemnt sur mes ctrl mais nouvelle notion dont je ne métrise pas encore ses suptilités

    Toutes bonnes idées et autres seront recues avec plaisir!

    Merci d' avance.

  2. #2
    Expert confirmé
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Par défaut
    Salut, voir ici par exemple.

  3. #3
    Membre averti
    Homme Profil pro
    pharmacien
    Inscrit en
    Septembre 2016
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Pérou

    Informations professionnelles :
    Activité : pharmacien
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Septembre 2016
    Messages : 42
    Par défaut
    Bjr Kiki29,

    Ce lien me permet de limiter a l´entrée numerique dans mes txtbox qui se créent a l´initialisation de mon USF, cela grace a leur propriété tag.
    Trés intéressant en soit, car ca va faire 2 heures que je cogite dessus.

    Mais qui n´est pas spécifique a mon pb, car je souhaite créent de maniere dynamique d´autre text box lorsque mes text box "TxtSelladas" & i et "TxtFrac" & i ne sont pas vide, mon souci est que je ne sais pas comment les appeler (si ce n´est au travers de leur tag) ou meme interagir avec ces derniéres en fonction de leur valeur...

    J´espere avoir été plus clair dans ma problématique.

    Dans tous les cas merci, ca m´a permis de comprendre un peu mieux les modules de classe.

  4. #4
    Membre averti
    Homme Profil pro
    pharmacien
    Inscrit en
    Septembre 2016
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Pérou

    Informations professionnelles :
    Activité : pharmacien
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Septembre 2016
    Messages : 42
    Par défaut
    Bonjour Forum,

    Quelqu´un aurait si ce n´est juste une idée pour m´aider SVP; Si je n´ai pas été claire dans ma problématique je peurx fournir plus d ínfo...

    Merci d ´avance...

Discussions similaires

  1. Réponses: 4
    Dernier message: 21/12/2010, 13h06
  2. Parcourir les elements d'une ligne crée dynamiquement dans un FORM
    Par redabadache3 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 23/12/2008, 14h30
  3. Réponses: 1
    Dernier message: 11/02/2008, 11h40
  4. [Excel] Charger une form créée dynamiquement dans un autre classeur
    Par spileo dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 28/02/2007, 11h58
  5. Réponses: 4
    Dernier message: 29/10/2005, 18h36

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