Vba augmenter RowSource
CDRW
Messages postés
42
Statut
Membre
-
ccm81 Messages postés 11033 Statut Membre -
ccm81 Messages postés 11033 Statut Membre -
Bonjour,
J'ai crée une petite application qui en fait à partir d'une liste d'objets donne les caractéristiques de cet objet. J'ai aussi rajouté le fait qu'on puisse rajouter des objets et ses caractéristiques mais j'ai un problème :
J'ai mis ma liste d'objet dans un menu déroulant avec RowSource (plage) et j'aimerai que quand je rajoute un objet cette plage augmente car sinon l'objet récemment ajouté ne se trouve pas dans la liste.
J'ai mis une très grande valeur pour le Rowsource mais ca donne des blancs dans le menu déroulant donc je cherche mieux
Merci davance.
J'ai crée une petite application qui en fait à partir d'une liste d'objets donne les caractéristiques de cet objet. J'ai aussi rajouté le fait qu'on puisse rajouter des objets et ses caractéristiques mais j'ai un problème :
J'ai mis ma liste d'objet dans un menu déroulant avec RowSource (plage) et j'aimerai que quand je rajoute un objet cette plage augmente car sinon l'objet récemment ajouté ne se trouve pas dans la liste.
J'ai mis une très grande valeur pour le Rowsource mais ca donne des blancs dans le menu déroulant donc je cherche mieux
Merci davance.
2 réponses
-
bonjour
le plus simple est de définir plage de façon 'dynamique'
ex pour plage = "A1:Ax" où x peut varier
insertion/nom/definir
nom : plage
=DECALER(Feuil1!$A$1;0;0;NBVAL(Feuil1!$A:$A);1)
bonne suite -
salut cdrw,
Petit exemple à adapter bien sur mais si ça peut t'aider :
Dim Plage As String With Sheets("Database") Plage = .Range("A1:A" & .Range("A65536").End(xlUp).Row).Address End With ComboBox1.RowSource = "Database!" & Plage
ouWith Sheets("Database") ComboBox1.List = .Range("A1:A" & .Range("A65536").End(xlUp).Row).Value End With
ou bien encoreDim Plage As Range With Sheets("Database") Set Plage = .Range("A1:A" & .Range("A65536").End(xlUp).Row) End With ComboBox1.List = Plage.Value
bon courage