Combobox multiple colonne
Le
Jean-Paul V

Bonjour à tous
Je n’arrive pas à affecter le changement de valeur de mon Combobox à 2
colonnes à ma cellule active. ( je veux affecter le choix de la 2 ème
colonne).
NB la cellule active est contrôlée par un Données Validation Liste sur la
2ème colonne de Rnature.
Où est mon erreur ?
Les propriétés de mon Combobox sont :
Boundcolumn 2
Columncount 2
RowSource Rnature ( le nom affecté à mes 2 colonnes)
Le code du Userform :
Private Sub ComboBox2_Change()' For i = 1 To 100
On Error GoTo Zut
Dim Désactiver As Boolean
If Désactiver Then Exit Sub
If ComboBox2.Value = "" Then Exit Sub
Désactiver = False
If Not Intersect(ActiveCell, Range("Saisie")) Is Nothing Then
'ActiveCell.Value = ComboBox2.Value ‘ne marche pas
ActiveCell.Value = ComboBox2.ControlSource
ActiveCell.Offset(0, -2).ClearContents
Désactiver = True
ComboBox2.Value = ""
UserForm1.Hide
Else
MsgBox "Vous n'êtes pas dans la zone de saisie"
Désactiver = True
ComboBox2.Value = ""
UserForm1.Hide
End If
Next i
Zut:
MsgBox a & " LA CELLULE ACTIVE N'EST PAS DANS LA ZONE DE SAISIE ! ! ! "
Désactiver = True
ComboBox2.Value = ""
UserForm1.Hide
End Sub
@+ j’espère
Je n’arrive pas à affecter le changement de valeur de mon Combobox à 2
colonnes à ma cellule active. ( je veux affecter le choix de la 2 ème
colonne).
NB la cellule active est contrôlée par un Données Validation Liste sur la
2ème colonne de Rnature.
Où est mon erreur ?
Les propriétés de mon Combobox sont :
Boundcolumn 2
Columncount 2
RowSource Rnature ( le nom affecté à mes 2 colonnes)
Le code du Userform :
Private Sub ComboBox2_Change()' For i = 1 To 100
On Error GoTo Zut
Dim Désactiver As Boolean
If Désactiver Then Exit Sub
If ComboBox2.Value = "" Then Exit Sub
Désactiver = False
If Not Intersect(ActiveCell, Range("Saisie")) Is Nothing Then
'ActiveCell.Value = ComboBox2.Value ‘ne marche pas
ActiveCell.Value = ComboBox2.ControlSource
ActiveCell.Offset(0, -2).ClearContents
Désactiver = True
ComboBox2.Value = ""
UserForm1.Hide
Else
MsgBox "Vous n'êtes pas dans la zone de saisie"
Désactiver = True
ComboBox2.Value = ""
UserForm1.Hide
End If
Next i
Zut:
MsgBox a & " LA CELLULE ACTIVE N'EST PAS DANS LA ZONE DE SAISIE ! ! ! "
Désactiver = True
ComboBox2.Value = ""
UserForm1.Hide
End Sub
@+ j’espère
Pour récupérer la valeur de la seconde colonne (l'index des colonnes
commence à 0) :
With ComboBox2
ActiveCell.Value = .Column(1, .ListIndex)
End With
Hervé.
"Jean-Paul V" de news:
ça marche, j'ai bien dans ma cellule active mon choix colonne 2 mais la
macro se plante avec un message erreur 381 ''impossible de lire la propriété
Column.Index de la Table de propriétés non valide''
@+ j'espère et merci pour votre aide