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 Word Discussion :

concatener résultat plusieurs checkbox dans userform word en suite de 0 ou 1.


Sujet :

VBA Word

  1. #1
    Membre à l'essai
    Homme Profil pro
    Enseignant
    Inscrit en
    Mai 2017
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Mai 2017
    Messages : 19
    Points : 18
    Points
    18
    Par défaut concatener résultat plusieurs checkbox dans userform word en suite de 0 ou 1.
    Bonjour,

    Grand débutant sur vba avec word 2013, j'ai besoin de vos lumières.

    J'ai créé un userform avec de nombreuses checkbox.
    L'idée est de créer une suite de 0 et 1 selon les checkbox sélectionnées.

    Voici un extrait de mon code :

    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
    Private Sub CommandButton1_Click()
    Dim prog As String
    Dim niv As String
    Dim numero As String
     
    ' Gestion du niveau
    If CheckBox1 = True Then niv = "1" Else niv = "0"
    numero = numero + niv
    If CheckBox2 = True Then niv = "1" Else niv = "0"
    numero = numero + niv
    If CheckBox3 = True Then niv = "1" Else niv = "0"
    numero = numero + niv
    If CheckBox4 = True Then niv = "1" Else niv = "0"
    numero = numero + niv
     
    ' Gestion du programme
    If CheckBox5 = True Then prog = "1" Else prog = "0"
    numero = numero + prog
    If CheckBox6 = True Then prog = "1" Else prog = "0"
    numero = numero + prog
    If CheckBox7 = True Then prog = "1" Else prog = "0"
    numero = numero + prog
    If CheckBox8 = True Then prog = "1" Else prog = "0"
    numero = numero + prog
    MsgBox (numero)
    Cela fonctionne sauf que j'ai presque 100 checkbox....

    N'y a-t-il pas un moyen pour créer une boucle qui donnerait le même résultat en un minimum de lignes de code ?

    A bientôt.

    Lionel.

  2. #2
    Rédacteur/Modérateur

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

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

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 595
    Points : 34 269
    Points
    34 269
    Par défaut
    SAlut,

    lorsqu'une tache est repetitive, on utilise des boucles

    http://silkyroad.developpez.com/vba/boucles/#LIII

    Ici tu peux passer par une syntaxe comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Dim i as Integer
    For i = 1 To 100
    If Me.Controls("CheckBox" & i).Value = True Then 
    numero = numero + "1"
    Else
    numero = numero + "0"
    End If
    Next i
    Msgbox numero
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  3. #3
    Membre à l'essai
    Homme Profil pro
    Enseignant
    Inscrit en
    Mai 2017
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Mai 2017
    Messages : 19
    Points : 18
    Points
    18
    Par défaut
    Bonjour Jean-Philippe,

    Merci beaucoup.
    Ton code a bien fonctionné.

    Lionel.

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

Discussions similaires

  1. [XL-2003] Mettre plusieurs checkbox dans un userform
    Par peofofo dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 08/02/2010, 11h53
  2. récupérer données table access dans userform word
    Par fixounete dans le forum VBA Word
    Réponses: 1
    Dernier message: 25/10/2009, 17h27
  3. plusieurs checkbox dans un while
    Par kaking dans le forum Langage
    Réponses: 4
    Dernier message: 30/10/2008, 16h18
  4. Réponses: 3
    Dernier message: 16/06/2008, 17h27
  5. Réponses: 5
    Dernier message: 18/02/2008, 16h11

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