ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Populating ComboBoxes (https://www.excelbanter.com/excel-programming/292933-populating-comboboxes.html)

William Barnes

Populating ComboBoxes
 
I'm trying to populate a combobox control with items from a Range on a
worksheet. I have code that returns a Variant assigned to a Range of cells
in a WorkSheet. Is there an easy way to assign these values to the ComboBox,
or must I loop through the Variant array? I tried assigning the ComboBox
RowSource Property to the Variant but got an error. My code looks something
like this:

Public Function GetData() as Variant
Dim rng as Range
Set rng = MyWorkSheet.Range("$A$1:$E$1")
GetData = rng
End Function

Private Sub MyForm_Initialize()
ComboBox1.RowSource = GetData
End Sub



Bob Phillips[_6_]

Populating ComboBoxes
 
William,

The Rowsource property is a string, so either return a string in the
function (rng.Address), or do it the form initialise (ComboBox1.RowSource =
GetData.Address )

--

HTH

Bob Phillips
... looking out across Poole Harbour to the Purbecks
(remove nothere from the email address if mailing direct)

"WIlliam Barnes" wrote in message
...
I'm trying to populate a combobox control with items from a Range on a
worksheet. I have code that returns a Variant assigned to a Range of cells
in a WorkSheet. Is there an easy way to assign these values to the

ComboBox,
or must I loop through the Variant array? I tried assigning the ComboBox
RowSource Property to the Variant but got an error. My code looks

something
like this:

Public Function GetData() as Variant
Dim rng as Range
Set rng = MyWorkSheet.Range("$A$1:$E$1")
GetData = rng
End Function

Private Sub MyForm_Initialize()
ComboBox1.RowSource = GetData
End Sub





William Barnes

Populating ComboBoxes
 
Thanks Bob. That's what it took.

"Bob Phillips" wrote in message
...
William,

The Rowsource property is a string, so either return a string in the
function (rng.Address), or do it the form initialise (ComboBox1.RowSource

=
GetData.Address )

--

HTH

Bob Phillips
... looking out across Poole Harbour to the Purbecks
(remove nothere from the email address if mailing direct)

"WIlliam Barnes" wrote in message
...
I'm trying to populate a combobox control with items from a Range on a
worksheet. I have code that returns a Variant assigned to a Range of

cells
in a WorkSheet. Is there an easy way to assign these values to the

ComboBox,
or must I loop through the Variant array? I tried assigning the ComboBox
RowSource Property to the Variant but got an error. My code looks

something
like this:

Public Function GetData() as Variant
Dim rng as Range
Set rng = MyWorkSheet.Range("$A$1:$E$1")
GetData = rng
End Function

Private Sub MyForm_Initialize()
ComboBox1.RowSource = GetData
End Sub








All times are GMT +1. The time now is 02:46 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com