Combobox chargée par AddItem puis List, si Mono-Multicolonnes le Clear ne suffit pas.

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Charly88

XLDnaute Occasionnel
Bonjour, voici le bout de code qui plante sans que j'ai la moindre idée de pourquoi la 2è colonne est inaccessible alors même qu'au premier chargement, tout se passe sans problème. Merci pour toutes réponses.

Code:
    UserForm6.ComboBox1.Clear '= je repars totalement de 0, on est d'accord ?
    UserForm6.ComboBox1.Left = 285
    UserForm6.ComboBox1.Width = 240
    UserForm6.ComboBox1.ColumnCount = 2
    UserForm6.ComboBox1.ColumnWidths = ("35")
    For v = 1 To 10
        UserForm6.ComboBox1.AddItem v
        UserForm6.ComboBox1.Column(1, UserForm6.ComboBox1.ListCount - 1) = v*2 ' === Message : Could not get the Column Property. Invalid argument.
    Next v

Dans le même temps, si je survole UserForm6.ComboBox1.ColumnCount, il m'affiche "UserForm6.ComboBox1.ColumnCount = 2"

J'ai recréé un fichier avec une USF, combobox, etc... Impossible d'obtenir le bug.



Edit : Titre du sujet modifié suite à diagnostic plus bas.
 
Dernière édition:
Re : =>REChargement<= Combobox Multicolonnes "Column Property" - incapable de reprodu

Bonjour,

fonctionne chez moi ainsi, code placé dans le module de l'usf :
Code:
Private Sub UserForm_Initialize()
Dim v As Byte
With ComboBox1
    .Clear
    '.Left = 285
    '.Width = 240
    .ColumnCount = 2
    .ColumnWidths = ("35;0")
        For v = 1 To 10
            .AddItem v
            .Column(1, .ListCount - 1) = v * 2
        Next v
End With
End Sub

maintenant sans plus de détails....

bon après midi
@+
 
Re : =>REChargement<= Combobox Multicolonnes "Column Property" - incapable de reprodu

Le problème ne vient pas de ce code mais (évidemment...) de ce que je fais avant avec la Combo : je charge une liste.
Je commençais en m'en douter lorsque je n'ai pas réussi à restituer le bug à part.

Mon idée c'est qu'en fonction d'un OptionButton, je vais charger tantôt un contenu, tantôt un autre. Hors mon premier contenu est une liste, a une colonne et mon second est un tableau à 2 colonnes. Et le Clear ne semble pas faire complètement son travail.

Je ne sais pas encore si le problème vient de la méthode List puis AddItem ou du fait que la tableau de List n'a qu'une colonne.
 

Pièces jointes

Re : Combobox Monocolonne puis Multicolonnes - Le Clear ne suffit pas.

2ème fichier de test, j'ai changé le titre du sujet.

Malgré le Clear, c'est bien le passage d'une Combo à une Colonne à une Combo à 2 colonnes qui semble créer le plantage.
 

Pièces jointes

Re : Combobox Monocolonne puis Multicolonnes - Le Clear ne suffit pas.

Bonjour,

à priori aime pas trop le mélange des genres.... regarde le code ci-dessous fonctionne en l'état chez moi.....
Code:
Option Explicit
Private Sub UserForm_Initialize()
MajCb2
MajCb1
End Sub
Public Sub MajCb2()
Dim v As Integer
    UserForm1.ComboBox1.Clear
    UserForm1.ComboBox1.ColumnCount = 2
    For v = 1 To 10
        UserForm1.ComboBox1.AddItem v
        UserForm1.ComboBox1.List(UserForm1.ComboBox1.ListCount - 1, 1) = v * 2
    Next v
    UserForm1.ComboBox1.Clear
    UserForm1.ComboBox1.ColumnCount = 1
    For v = 1 To 10
        UserForm1.ComboBox1.AddItem v
    Next v
    UserForm1.ComboBox1.Clear
    UserForm1.ComboBox1.ColumnCount = 2
    For v = 1 To 10
        UserForm1.ComboBox1.AddItem v
        UserForm1.ComboBox1.Column(1, UserForm1.ComboBox1.ListCount - 1) = v * 2
    Next v
End Sub

Public Sub MajCb1()
    UserForm1.ComboBox1.Clear
    UserForm1.ComboBox1.ColumnCount = 2
    UserForm1.ComboBox1.List = Application.Range("LIste2Col").Value
    UserForm1.ComboBox1.Clear
    UserForm1.ComboBox1.ColumnCount = 1
    UserForm1.ComboBox1.List = Application.Range("Liste1Col").Value
    UserForm1.ComboBox1.Clear
    UserForm1.ComboBox1.ColumnCount = 2
    UserForm1.ComboBox1.List = Application.Range("LIste2Col").Value
End Sub

bonne journée
@+
 
Re : Combobox Monocolonne puis Multicolonnes - Le Clear ne suffit pas.

Bien, merci Pierrot pour le coup de main.

J'ai ensuite essayé de contourner mais la seule vraie solution semble d'utiliser le AddItem, plus flexible, dans mes 2 cas. Quitte à boucler sur ma plage.
Je vais remodifier le titre du sujet.
 
Re : Combobox chargée par AddItem puis List, si Mono-Multicolonnes le Clear ne suffit

Re,

à noter peut être toujours charger la liste sur 2 colonnes, et masquer la seconde lorsque tu le veux (mettre sa largeur à 0).... A voir selon la finalité de ton projet ....
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Retour