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

VB 6 et antérieur Discussion :

Concaténation sur radio


Sujet :

VB 6 et antérieur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 114
    Par défaut Concaténation sur radio
    Bonsoir à tous...

    Je m'explique mon but est de désactiver des bouton radio au moyen d'une boucle mais pour cela il faut que je concatène des indice avec le nom du bouton radio.
    C'est un groupe de contrôle radio, il s'appelle option1 et possède 4 indice allant de 0 à 3.

    Donc il y a :
    --Option1(0)
    --Option1(1)
    --Option1(2)
    --Option1(3)

    Voila ce que j'ai essayé de faire avec une variable nommé "radio" déclaré en String :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    radio = "option" & i & "(" & i & ")"
        radio.Enabled = False
    Mais cette solutio ne marche pas j'ai essayé ensuite :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    option" & i & "(" & i & ")".enabled = false
    Mais ça marche pas non plus alors si quelqu'un peut m'aider merci.

  2. #2
    Membre Expert Avatar de OhMonBato
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    2 660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 660
    Par défaut
    Si ta question s'était limité à "Je m'explique mon but est de désactiver des bouton radio au moyen d'une boucle " ben il y aurait pas de problème, encore faut-il mettre une boucle effectivement.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 114
    Par défaut
    La boucle je l'ai pas mis car c'est pas tellement ca mon problème mais je vais la mettre si ça peut aider à comprendre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Do While (j <= 11)
            Do While (k <= 3)
                radio = "Option" & "j" & "(k)".enabled = false
                radio.Enabled = False
                Next k
            Loop
            Next j
        Loop

  4. #4
    Membre Expert Avatar de OhMonBato
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    2 660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 660
    Par défaut
    T'es sur que c'est pas les boucles ton problème justement ?

    Je te conseille fortement de commencer par là :
    Tu vas sur Google, tu tapes "boucle vb -net" et tu vas voir que le premier lien te ramènes à une page qui n'est pas loin d'ici. Je pense que ça pourrait t'interesser et tu vas découvrir que, si, les boucles, c'est un des tes problèmes pour le moment.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 114
    Par défaut
    en faite je veux savoir si c'est possible de concaténé un indice a un nom de controle radio c'est tout après peut etre que j'ai fait une erreur de syntaxe pour les boucles mais je m'en occuperais plus tard, vb m'a mis un message d'erreur sur ma ligne de concaténation.

  6. #6
    Membre Expert Avatar de OhMonBato
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    2 660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 660
    Par défaut
    dans ton premier message tu dis qu'il ya 4 controles qui s'appellent :

    --Option1(0)
    --Option1(1)
    --Option1(2)
    --Option1(3)
    Pourquoi veux tu ensuite les appeler autrement ? Tu ne peux concaténer que des chaines e caractères, pas des noms de controle !
    Si tu nous disais ce que VB donne comme erreur et sur quel ligne (ce qu'on devrait faire dans son premier message quand on a un pb de plantage) ?

  7. #7
    Expert confirmé
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 132
    Par défaut
    concaténation
    le principe est le même regarde ce post
    :whistle:pourquoi pas, pour remercier, un :plusser: pour celui/ceux qui vous ont dépannés.
    saut de ligne
    OOOOOOOOO👉 → → Ma page perso sur DVP ← ← 👈

  8. #8
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 3
    Par défaut simple
    pas besoin de concatener. s'il s'agit de boutons radio indexés, (option1(0)..à..option(4)), ce code suffit.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    For i = 0 To 4
        Option1(i).Value = False
    Next

    Bonne journée

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 114
    Par défaut
    Alain ta facon marche bien mais le problème c'est que j'ai 12 groupe d'option donc je suis obligé de faire cette boucle 12 fois. Donc j'ai vais prendre l'autre solution sauf si j'y arrive pas.

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 114
    Par défaut
    Voila j'ai ajouté mon nouveau code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    j = 1
    For Each radio In Me.Controls
        NomRadio = "Option" & j
        If radio.Name = NomRadio Then
            radio.Enabled = False
        End If
        j = j + 1
    Next
    Le programme s'éxécute bien ca passe bien dans la boucle mais cela me met pas mes contrôle radio en grisé je ne comprend pas pourquoi ?

  11. #11
    Membre Expert Avatar de OhMonBato
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    2 660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 660
    Par défaut
    Toi tu ne veux "scanner" que tes boutons radio mais VB est pas au courant, alors lui, un peu con, il cherche tous les contrôles de ta feuille voila pourquoi ça ne marche pas.
    Une instruction plus qu'utile s'appelle Debug.print, amuse toi à mettre "debug.print radio.name" avant ton test tu verras


    Il faut donc plutot tester que c'est bien un controle RadioButton si tu veux vraiment les rendre TOUS disable
    donc ton test deviendrait plutot quelquechose du style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    For Each Ctl In Controls
      If TypeOf Ctl Is OptionButton Then
        Ctl.Enabled = False
      End If
    Next

  12. #12
    Expert confirmé
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 132
    Par défaut
    For Each radio In Me.Controls
    NomRadio = "Option" & j
    If radio.Name = NomRadio Then
    radio.Enabled = False
    End If
    j = j + 1
    Next
    ATTENTION
    si, tes controls sont indexés, NomRadio contient "leControl1", la condition If n'est donc jamais rempli.
    :whistle:pourquoi pas, pour remercier, un :plusser: pour celui/ceux qui vous ont dépannés.
    saut de ligne
    OOOOOOOOO👉 → → Ma page perso sur DVP ← ← 👈

  13. #13
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 114
    Par défaut
    C'est bon merci beaucoup à vous ca marche j'ai rajouter aussi une condition car le premier groupe de button radio ne devait pas etre mis à false.
    Cela donne ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    For Each radio In Me.Controls
        NomRadio = "Option" & j
        If TypeOf radio Is OptionButton And radio.Name <> "Option0" Then
            radio.Enabled = False
        End If
        j = j + 1
    Next
    Merci c'est résolu.

  14. #14
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 3
    Par défaut Index ou pas...
    Je persiste dans ma réponse avec les radiobutton indexés. Si tu as plusieurs groupes de boutons, tu peux les mettres dans des frames (par groupe) et indexer les radiobuttons pour chaque frame . frame1 option1[0..5] , frame 2 option2[0..5] etc...etc. Et tu peux même indexer les frames si nécessaire. J'utilise plutôt cette methode, je crois que c'est plus rapide que chercher et filtrer tous les controles dans le form.

    Bon courage

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

Discussions similaires

  1. Réaliser une concaténation sur l'évènement onChange
    Par Dam1en dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 29/11/2007, 12h55
  2. concaténer sur toute une colonne
    Par melodyyy dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 14/12/2006, 14h20
  3. [Forms5] Key pressed sur radio bouton
    Par Steph82 dans le forum Forms
    Réponses: 1
    Dernier message: 29/05/2006, 16h44
  4. concaténation sur une balise image
    Par hutchuck dans le forum Langage
    Réponses: 5
    Dernier message: 15/12/2005, 12h49
  5. concaténation sur deux critères
    Par stéphane_ais2 dans le forum Access
    Réponses: 7
    Dernier message: 29/11/2005, 09h37

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