VBA Excel : ComboBox
Résolu
louis
-
kamal1983 Messages postés 11 Date d'inscription Statut Membre Dernière intervention -
kamal1983 Messages postés 11 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Mon problème est simple. Je souhaite créer un nombre précis de ComboBox, d'après un nombre que j'entre dans une feuille. Jusque là ça va. Le truc c'est que j'aimerais numéroter ces ComboBox (c'est-à-dire leur donner des numéros qui se suivent de 1 à n), ce que ma macro actuelle semble faire de manière aléatoire. Merci de votre aide.
Sub CréaComboBox()
Dim NombAn, NombComm As Integer
' NombComm = nombre de commerciaux
' NombAn = nombre d'années étudiées
Worksheets("Hypothèses_Comm").Select
NombComm = Cells(3, 4).Value
NombAn = Cells(4, 4).Value
' Récupère les données dans la feuille "Hypothèses_Comm"
For i = 1 To NombComm
ActiveSheet.OLEObjects.Add(ClassType:="Forms.ComboBox.1", Link:=False, _
DisplayAsIcon:=False, Left:=263.25, Top:=(64 + 31.75 * (i - 1)), Width:=138.75, Height:= _
18).Select
Next
' Crée une Combobox pour chaque commercial
End Sub
Mon problème est simple. Je souhaite créer un nombre précis de ComboBox, d'après un nombre que j'entre dans une feuille. Jusque là ça va. Le truc c'est que j'aimerais numéroter ces ComboBox (c'est-à-dire leur donner des numéros qui se suivent de 1 à n), ce que ma macro actuelle semble faire de manière aléatoire. Merci de votre aide.
Sub CréaComboBox()
Dim NombAn, NombComm As Integer
' NombComm = nombre de commerciaux
' NombAn = nombre d'années étudiées
Worksheets("Hypothèses_Comm").Select
NombComm = Cells(3, 4).Value
NombAn = Cells(4, 4).Value
' Récupère les données dans la feuille "Hypothèses_Comm"
For i = 1 To NombComm
ActiveSheet.OLEObjects.Add(ClassType:="Forms.ComboBox.1", Link:=False, _
DisplayAsIcon:=False, Left:=263.25, Top:=(64 + 31.75 * (i - 1)), Width:=138.75, Height:= _
18).Select
Next
' Crée une Combobox pour chaque commercial
End Sub
A voir également:
- VBA Excel : ComboBox
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Déplacer colonne excel - Guide
- Si ou excel - Guide
- Excel compter cellule couleur sans vba - Guide
2 réponses
As-tu essayé ceci :
For i = 1 To NombComm ActiveSheet.OLEObjects.Add(ClassType:="Forms.ComboBox.1", Link:=False, _ DisplayAsIcon:=False, Left:=263.25, Top:=(64 + 31.75 * (i - 1)), Width:=138.75, Height:= _ 18).Select Selection.Name = "ListeChoix" & i Next ' Crée une Combobox pour chaque commercial
louis
Merci beaucoup, ça résoud le problème !
Bonjour a toutes et a tous,
j'ai une fonction qui fait le lien entre vba et la table"stock" d'access,la voici :
fpubDBConnect
vpubDBRecordset.Open ("SELECT * FROM stock WHERE ID =" & CInt(txtID)), vpubDBConnection, adOpenDynamic, adLockOptimistic
With vpubDBRecordset
End With
vpubDBRecordset.Close
je veux en effet créer une commande vb qui fera le tri pour la table "stock" par ordre decroissant de la valeur du champ 1. est ce que qulqu'un sait comment résoudre ce gros probléme , je ne sais pas si il existe une solution ou pas pour ce probléme, mais moi je compte sur vos talents les amis !
merci pour votre réponse
j'ai une fonction qui fait le lien entre vba et la table"stock" d'access,la voici :
fpubDBConnect
vpubDBRecordset.Open ("SELECT * FROM stock WHERE ID =" & CInt(txtID)), vpubDBConnection, adOpenDynamic, adLockOptimistic
With vpubDBRecordset
End With
vpubDBRecordset.Close
je veux en effet créer une commande vb qui fera le tri pour la table "stock" par ordre decroissant de la valeur du champ 1. est ce que qulqu'un sait comment résoudre ce gros probléme , je ne sais pas si il existe une solution ou pas pour ce probléme, mais moi je compte sur vos talents les amis !
merci pour votre réponse