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 :

Renseigner des variables indexées dans une macro (userform) [XL-2010]


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Homme Profil pro
    Responsable de projet fonctionnel
    Inscrit en
    Mai 2014
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Responsable de projet fonctionnel
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2014
    Messages : 15
    Points : 12
    Points
    12
    Par défaut Renseigner des variables indexées dans une macro (userform)
    Mesdames, Messieurs bonjour,

    Je fais appèle à vos connaissances car je me heurte à un problème dans une macro...

    Presentation globale du probleme :

    Dans un userform j'ai une trentaine de textbox qui sont toutes nomées "Horaire1_1", "Horaire1_2", "Horaire1_3", "Horaire2_1","Horaire2_2".... (les chiffres represent une postion graphique dans ma userform)

    j'aurais aimé arriver à ecrire par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    For x=1to7
       For y=1 to 4
           HoraireX_Y.value="Valeur calculé dans le reste du programme"
       Next
    Next
    Ca me permetterai de simplifier grandement mon programme car je fais pas mal de comparaison et de calcul avec ces textbox...

    J'ai deja dans une autre macro, réussi à indexer des variables pour de la lecture de valeurs, de la façon suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    dim Data as integer
    dim i as integer
     
    For i=1 to 4
    resultat=Data & i
    next
    Dans ce sens la ca fonctionne bien, par contre indexé des variables pour leurs affecter une valeur me pose problème.

    En espérant avoir été assez clair

    Par avance merci de votre aide

  2. #2
    Expert éminent
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    3 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 3 453
    Points : 6 871
    Points
    6 871
    Par défaut
    Bonjour,

    Un truc dans le genre ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    Dim I As Integer
    Dim J As Integer
     
    For I = 1 To 7
     
        For J = 1 To 4
     
            Me.Controls("Horaire" & I & "_" & J).Text = "ici la valeur !"
     
    Next J, I

  3. #3
    Expert éminent

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 138
    Points : 9 972
    Points
    9 972
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    en passant par la collection des contrôles du userform, tu peux boucler via le nom

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    For x = 1 To 7
        For y = 1 To 4
            Me.Controls("Horaire" & x & "_" & y) = "Valeur calculé dans le reste du programme"
        Next y
    Next x

    EDIT : trop lent !

  4. #4
    Membre extrêmement actif
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 83
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Points : 12 433
    Points
    12 433
    Par défaut
    Bonjour
    Cette phrase me laisse penser à la possibilité d'un malentendu en ce qui concerne la demande
    par contre indexé des variables pour leurs affecter une valeur me pose problème
    Peux-tu en préciser le sens exact ?
    Car s'il est ce que je commence à deviner, la solution est un array de tes variables.

  5. #5
    Membre à l'essai
    Homme Profil pro
    Responsable de projet fonctionnel
    Inscrit en
    Mai 2014
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Responsable de projet fonctionnel
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2014
    Messages : 15
    Points : 12
    Points
    12
    Par défaut
    Bonjour,

    Merci Thez et Joe.levrai c'est exactement ce que je n'arrivait pas à faire.

    Grace à vous j'ai pu condencer mon programme d'une centaine de lignes en seulement une dizaine!!!

    Encore merci pour votre aide et la vitesse à laquelle vous avez repondu.

  6. #6
    Membre à l'essai
    Homme Profil pro
    Responsable de projet fonctionnel
    Inscrit en
    Mai 2014
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Responsable de projet fonctionnel
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2014
    Messages : 15
    Points : 12
    Points
    12
    Par défaut
    Citation Envoyé par unparia Voir le message
    Bonjour
    Cette phrase me laisse penser à la possibilité d'un malentendu en ce qui concerne la demande

    Peux-tu en préciser le sens exact ?
    Car s'il est ce que je commence à deviner, la solution est un array de tes variables.
    Bonjour,
    Effectivement dans un module j'aurais utilisé un tableau, mais mon problème et plus precisement lié à l'ecriture de Textbox les unes a la suite des autres en "Automatique", juste en changeant un index.

    Je me suis certainement mal exprimé.

    Merci de votre interet à mon problème.

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

Discussions similaires

  1. Appeler dans une requête des variables définies dans une macro
    Par piflechien73 dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 20/08/2009, 15h12
  2. Réponses: 11
    Dernier message: 11/07/2008, 14h58
  3. variable Html dans une macro
    Par casavba dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 21/11/2007, 00h08
  4. [SQL] insérer des variables php dans une requête sql
    Par lili38 dans le forum PHP & Base de données
    Réponses: 28
    Dernier message: 22/06/2007, 16h38
  5. Récuperer des variables vbs dans une page php
    Par tese84 dans le forum VBScript
    Réponses: 18
    Dernier message: 19/06/2007, 10h28

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