Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Sam
Bonjour, je n'ai pas réussi à tester ta macro.(sans doute un pb de module, de définition etc. - je n'ai pas encore tout compris)
J'ai fait ceci avec l'enregistrement de macro et je l'ai adapté J'ai eu le même pb que toi avant que je ne rajoute un = devant le lignevali afin d'obtenir Formula1:="=lignevali" Tu pourrais peut être t'en inspirer.
Sub Macro2() ' ' Macro enregistrée le 12/07/2010 par Michel ' ' DernierNom = Range("CONGES!A1").End(xlToRight).Address ActiveWorkbook.Names.Add Name:="lignevali", RefersTo:="=CONGES!$A$1:" & DernierNom With Selection.Validation .Delete .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _ xlBetween, Formula1:="=lignevali" .IgnoreBlank = True .InCellDropdown = True .InputTitle = "" .ErrorTitle = "" .InputMessage = "" .ErrorMessage = "" .ShowInput = True .ShowError = True End With End Sub
Cordialement Michel dit "Sam" "Alex" a écrit dans le message de news:
Bonjour à tous,
Je voulais savoir, si il était possible de définir le menu déroulant d'une combox non pas à partir d'une colonne mais d'une ligne.
J'ai bien tenter d'écrire cela :
Private Sub UserForm_Activate() DernierNom = Range("CONGES!A1").End(xlToRight).Address NOM.RowSource = "CONGES!A1:" & DernierNom NOM.ListIndex = 0 End Sub
Mais ma liste de combobox s'arrête au titre.
Merci de vos réponses. Alex
Bonjour,
je n'ai pas réussi à tester ta macro.(sans doute un pb de module, de
définition etc. - je n'ai pas encore tout compris)
J'ai fait ceci avec l'enregistrement de macro et je l'ai adapté
J'ai eu le même pb que toi avant que je ne rajoute un = devant le lignevali
afin d'obtenir Formula1:="=lignevali"
Tu pourrais peut être t'en inspirer.
Sub Macro2()
'
' Macro enregistrée le 12/07/2010 par Michel
'
'
DernierNom = Range("CONGES!A1").End(xlToRight).Address
ActiveWorkbook.Names.Add Name:="lignevali", RefersTo:="=CONGES!$A$1:" &
DernierNom
With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:=
_
xlBetween, Formula1:="=lignevali"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Sub
Cordialement
Michel dit "Sam"
"Alex" <alex-m@orange.fr> a écrit dans le message de news:
095dc248-46f4-4dab-b86b-888ebd59e7e0@j13g2000yqj.googlegroups.com...
Bonjour à tous,
Je voulais savoir, si il était possible de définir le menu déroulant
d'une combox non pas à partir d'une colonne mais d'une ligne.
J'ai bien tenter d'écrire cela :
Private Sub UserForm_Activate()
DernierNom = Range("CONGES!A1").End(xlToRight).Address
NOM.RowSource = "CONGES!A1:" & DernierNom
NOM.ListIndex = 0
End Sub
Bonjour, je n'ai pas réussi à tester ta macro.(sans doute un pb de module, de définition etc. - je n'ai pas encore tout compris)
J'ai fait ceci avec l'enregistrement de macro et je l'ai adapté J'ai eu le même pb que toi avant que je ne rajoute un = devant le lignevali afin d'obtenir Formula1:="=lignevali" Tu pourrais peut être t'en inspirer.
Sub Macro2() ' ' Macro enregistrée le 12/07/2010 par Michel ' ' DernierNom = Range("CONGES!A1").End(xlToRight).Address ActiveWorkbook.Names.Add Name:="lignevali", RefersTo:="=CONGES!$A$1:" & DernierNom With Selection.Validation .Delete .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _ xlBetween, Formula1:="=lignevali" .IgnoreBlank = True .InCellDropdown = True .InputTitle = "" .ErrorTitle = "" .InputMessage = "" .ErrorMessage = "" .ShowInput = True .ShowError = True End With End Sub
Cordialement Michel dit "Sam" "Alex" a écrit dans le message de news:
Bonjour à tous,
Je voulais savoir, si il était possible de définir le menu déroulant d'une combox non pas à partir d'une colonne mais d'une ligne.
J'ai bien tenter d'écrire cela :
Private Sub UserForm_Activate() DernierNom = Range("CONGES!A1").End(xlToRight).Address NOM.RowSource = "CONGES!A1:" & DernierNom NOM.ListIndex = 0 End Sub
Mais ma liste de combobox s'arrête au titre.
Merci de vos réponses. Alex
JB
Bonjour,
RowSource n'accepte pas un champ horizontal
Application.Transpose permet de transformer un champ en tableau et d'utiliser List pour alimenter un ComboBox.
Private Sub UserForm_Initialize() Me.ComboBox1.List = Application.Transpose([ListeHoriz]) End Sub
ou
Private Sub UserForm_Initialize() Me.ComboBox1.List = Application.Transpose(Range("b2", [iv2].End(xlToLeft))) End Sub