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 :

Rendre les combobox visble au même nombre que les textBox [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    343
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 343
    Par défaut Rendre les combobox visble au même nombre que les textBox
    Bonsoir,

    J'ai USF pour inscrire des adhérents qui fonctionne très bien, mais j'aimerais lui faire une petite modification
    J'ai 100 TextBox et 100 Combobox et j'ai un "combobox2" pour afficher le nombre de textbox désiré sur l'USF qui fonctionne très bien. mais j'aimerais lui faire une petite modification au niveau des combobox:

    Voila si je rentre dans la "combobox2" le nombre de 10 textbox visible sur l'USF j'aimerais avoir le même nombre de combobox visible ?

    Je joint mon fichier se qui apporteras un peut plus de clarté

    Merci d'avance pour votre aide.

    Cordialement
    Max
    Fichiers attachés Fichiers attachés

  2. #2
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Dans le module de ton usf
    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
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    Option Explicit
     
    Private Sub UserForm_Initialize()
    Dim Ctrl As Control
    Dim i As Byte
     
    Me.Height = 116                                  ' Hauteur de l'USF a l'ouverture
     
    For i = 1 To 100
        Me.ComboBox2.AddItem i
    Next i
     
    For Each Ctrl In Me.Controls
        If TypeName(Ctrl) = "ComboBox" Then
            If Ctrl.Name <> "ComboBox2" Then Ctrl.List = Array("Nord", "Sud", "Est", "Ouest")
        End If
    Next Ctrl
     
    Cacher
    End Sub
     
    'Nombre de joueurs  concour
    Private Sub ComboBox2_Change()
    Dim Nb As Byte, i As Byte
     
    Cacher
    If Me.ComboBox2.ListIndex > -1 Then
        Nb = Val(Me.ComboBox2.Value)
     
        For i = 1 To Nb
            Me.Controls("TextBox" & i).Visible = True
            Me.Controls("ComboBox" & i + 2).Visible = True
        Next i
        Me.Height = 116 + 16 * ((Nb - 1.1) \ 4)
    Else
        Me.Height = 116
    End If
    Me.Repaint
    End Sub
     
    Private Sub Cacher()
    Dim Ctrl As Control
     
    For Each Ctrl In Me.Controls
        If TypeName(Ctrl) = "ComboBox" Then
            If Ctrl.Name <> "ComboBox2" Then Ctrl.Visible = False
        ElseIf TypeName(Ctrl) = "TextBox" Then
            Ctrl.Visible = False
        End If
    Next Ctrl
    End Sub
     
    ' Bouton Valider joueur concour
    Private Sub CommandButton2_Click()
    Dim LastLig As Long
    Dim i As Byte
     
    With Worksheets("Inscriptions")
        LastLig = .Cells(.Rows.Count, "C").End(xlUp).Row
        For i = 1 To 100
            If Me.Controls("TextBox" & i) <> "" Then .Range("C" & LastLig + i).Value = Me.Controls("TextBox" & i)
        Next i
    End With
    Unload Me
    End Sub

  3. #3
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    343
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 343
    Par défaut
    Bonsoir mercatog,

    Un seul mot génial

    Je te remercie beaucoup et te souhaite une bonne soirée

    Cordialement

    Max

  4. #4
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Remplace le 16 par 17 en ligne 34 du code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        Me.Height = 116 + 17 * ((Nb - 1.1) \ 4)

  5. #5
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    343
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 343
    Par défaut
    Re,

    Juste une petite modif quel est le code pour envoyer les infos des combobox vers la colonne "B"

    Merci beaucoup....

    @+

    Max

  6. #6
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    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
    Private Sub CommandButton2_Click()
    Dim LastLig As Long
    Dim i As Byte
     
    With Worksheets("Inscriptions")
        LastLig = .Cells(.Rows.Count, "C").End(xlUp).Row
        For i = 1 To 100
            If Me.Controls("TextBox" & i) <> "" Then
                .Range("C" & LastLig + i).Value = Me.Controls("TextBox" & i)
                .Range("B" & LastLig + i) = Me.Controls("ComboBox" & i + 2)
            End If
        Next i
    End With
    Unload Me
    End Sub
    Faire 100 TextBox pour saisir 100 joueurs, je trouve que c'est loin d'être une bonne idée

  7. #7
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    343
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 343
    Par défaut
    Re,

    Tous d'abord je tiens a te remercier beaucoup.

    Après comment toi tu aurais fait a ma place?

    Faire 100 TextBox pour saisir 100 joueurs, je trouve que c'est loin d'être une bonne idée
    __________________
    Sa m'intéresserais......

    @+

    Max

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

Discussions similaires

  1. Réponses: 24
    Dernier message: 04/12/2010, 10h45
  2. [XL-2007] Génération de graphique sur la même feuille que les données
    Par _shuriken_ dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 19/01/2010, 23h46
  3. Réponses: 1
    Dernier message: 13/04/2008, 10h17
  4. [SQL] Comment faire avec SQL pour que les visiteurs voient la même donnée
    Par syl2042 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 28/08/2007, 14h39
  5. Réponses: 5
    Dernier message: 03/08/2006, 16h13

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