Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 9,101
Default Excel combo box - value list?

I created a form through VBA in Excel, and added a combo box to it. Much to
my dismay, and unlike MS Access, it seems like the only way to populate the
rowsource property is to bind it to a column on a spreadsheet.

In MS Access, you can select rowsourcetype = value list, and then hand-type
the values you'd like to show up in the combo box drop-down in the rowsource
property.

I really don't want to have to add another whole worksheet to my workbook to
accomodate a handful of options for a combo box. plus, I seem to be running
into issues if the worksheet with the applicable values is not the active
worksheet when the form is displayed. being able to hand-type the values like
you can in MS Access would be so much nicer.

Is there a way to do this in Excel? Am I missing something?

Thanks, Joel
  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 1,049
Default Excel combo box - value list?

you can populate from a range, or use the .ADD method


"Joel" wrote in message
...
I created a form through VBA in Excel, and added a combo box to it. Much to
my dismay, and unlike MS Access, it seems like the only way to populate
the
rowsource property is to bind it to a column on a spreadsheet.

In MS Access, you can select rowsourcetype = value list, and then
hand-type
the values you'd like to show up in the combo box drop-down in the
rowsource
property.

I really don't want to have to add another whole worksheet to my workbook
to
accomodate a handful of options for a combo box. plus, I seem to be
running
into issues if the worksheet with the applicable values is not the active
worksheet when the form is displayed. being able to hand-type the values
like
you can in MS Access would be so much nicer.

Is there a way to do this in Excel? Am I missing something?

Thanks, Joel



  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 27,285
Default Excel combo box - value list?

You can either use add item to assign the values in code or you can link
(bind) to the worksheet cells using rowsource.

You can do

userform1.Combobox1.List = Array(1,"Bob",3,4,5,6,"Sally")

Such code could be placed in the initialize event.

To the best of my knowledge, there is no provision to type in values.

--
Regards,
Tom Ogilvy


"Joel" wrote in message
...
I created a form through VBA in Excel, and added a combo box to it. Much

to
my dismay, and unlike MS Access, it seems like the only way to populate

the
rowsource property is to bind it to a column on a spreadsheet.

In MS Access, you can select rowsourcetype = value list, and then

hand-type
the values you'd like to show up in the combo box drop-down in the

rowsource
property.

I really don't want to have to add another whole worksheet to my workbook

to
accomodate a handful of options for a combo box. plus, I seem to be

running
into issues if the worksheet with the applicable values is not the active
worksheet when the form is displayed. being able to hand-type the values

like
you can in MS Access would be so much nicer.

Is there a way to do this in Excel? Am I missing something?

Thanks, Joel



  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 1,327
Default Excel combo box - value list?

Hi Joel

You don't have to data bind it. If you have few values (<20 or so) then code
is easier:

Private Sub UserForm_Initialize()
With Me.ComboBox1
.AddItem "Beer"
.AddItem "Wine"
.AddItem "Bourbon"
End With
End Sub

With longer lists I find a bound worksheet easier to maintain.

HTH. Best wishes Harald

"Joel" skrev i melding
...
I created a form through VBA in Excel, and added a combo box to it. Much

to
my dismay, and unlike MS Access, it seems like the only way to populate

the
rowsource property is to bind it to a column on a spreadsheet.

In MS Access, you can select rowsourcetype = value list, and then

hand-type
the values you'd like to show up in the combo box drop-down in the

rowsource
property.

I really don't want to have to add another whole worksheet to my workbook

to
accomodate a handful of options for a combo box. plus, I seem to be

running
into issues if the worksheet with the applicable values is not the active
worksheet when the form is displayed. being able to hand-type the values

like
you can in MS Access would be so much nicer.

Is there a way to do this in Excel? Am I missing something?

Thanks, Joel



  #5   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 9,101
Default Excel combo box - value list?

Harald,
Thanks, this helps.

And, unless they add more months to the year, this combo box list will
pretty much always contain 12 values. : )

Joel

"Harald Staff" wrote:

Hi Joel

You don't have to data bind it. If you have few values (<20 or so) then code
is easier:

Private Sub UserForm_Initialize()
With Me.ComboBox1
.AddItem "Beer"
.AddItem "Wine"
.AddItem "Bourbon"
End With
End Sub

With longer lists I find a bound worksheet easier to maintain.

HTH. Best wishes Harald

"Joel" skrev i melding
...
I created a form through VBA in Excel, and added a combo box to it. Much

to
my dismay, and unlike MS Access, it seems like the only way to populate

the
rowsource property is to bind it to a column on a spreadsheet.

In MS Access, you can select rowsourcetype = value list, and then

hand-type
the values you'd like to show up in the combo box drop-down in the

rowsource
property.

I really don't want to have to add another whole worksheet to my workbook

to
accomodate a handful of options for a combo box. plus, I seem to be

running
into issues if the worksheet with the applicable values is not the active
worksheet when the form is displayed. being able to hand-type the values

like
you can in MS Access would be so much nicer.

Is there a way to do this in Excel? Am I missing something?

Thanks, Joel






  #6   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 9,101
Default Excel combo box - value list?

Thanks, this helps.

What's the difference between putting it in the Initialize event vs. the
Activate event?


"Tom Ogilvy" wrote:

You can either use add item to assign the values in code or you can link
(bind) to the worksheet cells using rowsource.

You can do

userform1.Combobox1.List = Array(1,"Bob",3,4,5,6,"Sally")

Such code could be placed in the initialize event.

To the best of my knowledge, there is no provision to type in values.

--
Regards,
Tom Ogilvy


"Joel" wrote in message
...
I created a form through VBA in Excel, and added a combo box to it. Much

to
my dismay, and unlike MS Access, it seems like the only way to populate

the
rowsource property is to bind it to a column on a spreadsheet.

In MS Access, you can select rowsourcetype = value list, and then

hand-type
the values you'd like to show up in the combo box drop-down in the

rowsource
property.

I really don't want to have to add another whole worksheet to my workbook

to
accomodate a handful of options for a combo box. plus, I seem to be

running
into issues if the worksheet with the applicable values is not the active
worksheet when the form is displayed. being able to hand-type the values

like
you can in MS Access would be so much nicer.

Is there a way to do this in Excel? Am I missing something?

Thanks, Joel




  #7   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 1,327
Default Excel combo box - value list?

Months ? Why didn't you say so ? This is all it takes:

Private Sub UserForm_Initialize()
Dim L As Long
With ComboBox1
For L = 1 To 12
.AddItem Format$(DateSerial(1, L, 1), "mmmm")
Next
End With
End Sub

HTH. Best wishes Harald

"Joel" skrev i melding
...
Harald,
Thanks, this helps.

And, unless they add more months to the year, this combo box list

will
pretty much always contain 12 values. : )

Joel

"Harald Staff" wrote:

Hi Joel

You don't have to data bind it. If you have few values (<20 or so) then

code
is easier:

Private Sub UserForm_Initialize()
With Me.ComboBox1
.AddItem "Beer"
.AddItem "Wine"
.AddItem "Bourbon"
End With
End Sub

With longer lists I find a bound worksheet easier to maintain.

HTH. Best wishes Harald

"Joel" skrev i melding
...
I created a form through VBA in Excel, and added a combo box to it.

Much
to
my dismay, and unlike MS Access, it seems like the only way to

populate
the
rowsource property is to bind it to a column on a spreadsheet.

In MS Access, you can select rowsourcetype = value list, and then

hand-type
the values you'd like to show up in the combo box drop-down in the

rowsource
property.

I really don't want to have to add another whole worksheet to my

workbook
to
accomodate a handful of options for a combo box. plus, I seem to be

running
into issues if the worksheet with the applicable values is not the

active
worksheet when the form is displayed. being able to hand-type the

values
like
you can in MS Access would be so much nicer.

Is there a way to do this in Excel? Am I missing something?

Thanks, Joel






  #8   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 27,285
Default Excel combo box - value list?

The initialize event is fired once. the activate event could be fired more
than once. Other than that, I would think it is a matter of preference.

--
Regards,
Tom Ogilvy

"Joel" wrote in message
...
Thanks, this helps.

What's the difference between putting it in the Initialize event vs. the
Activate event?


"Tom Ogilvy" wrote:

You can either use add item to assign the values in code or you can link
(bind) to the worksheet cells using rowsource.

You can do

userform1.Combobox1.List = Array(1,"Bob",3,4,5,6,"Sally")

Such code could be placed in the initialize event.

To the best of my knowledge, there is no provision to type in values.

--
Regards,
Tom Ogilvy


"Joel" wrote in message
...
I created a form through VBA in Excel, and added a combo box to it.

Much
to
my dismay, and unlike MS Access, it seems like the only way to

populate
the
rowsource property is to bind it to a column on a spreadsheet.

In MS Access, you can select rowsourcetype = value list, and then

hand-type
the values you'd like to show up in the combo box drop-down in the

rowsource
property.

I really don't want to have to add another whole worksheet to my

workbook
to
accomodate a handful of options for a combo box. plus, I seem to be

running
into issues if the worksheet with the applicable values is not the

active
worksheet when the form is displayed. being able to hand-type the

values
like
you can in MS Access would be so much nicer.

Is there a way to do this in Excel? Am I missing something?

Thanks, Joel






  #9   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 1
Default Excel combo box - value list?

I noticed that in vba 6.3, version 9972 the additem method doesn't compile,
but it does in verison 9969. Any body seen that??

"Joel" wrote:

Harald,
Thanks, this helps.

And, unless they add more months to the year, this combo box list will
pretty much always contain 12 values. : )

Joel

"Harald Staff" wrote:

Hi Joel

You don't have to data bind it. If you have few values (<20 or so) then code
is easier:

Private Sub UserForm_Initialize()
With Me.ComboBox1
.AddItem "Beer"
.AddItem "Wine"
.AddItem "Bourbon"
End With
End Sub

With longer lists I find a bound worksheet easier to maintain.

HTH. Best wishes Harald

"Joel" skrev i melding
...
I created a form through VBA in Excel, and added a combo box to it. Much

to
my dismay, and unlike MS Access, it seems like the only way to populate

the
rowsource property is to bind it to a column on a spreadsheet.

In MS Access, you can select rowsourcetype = value list, and then

hand-type
the values you'd like to show up in the combo box drop-down in the

rowsource
property.

I really don't want to have to add another whole worksheet to my workbook

to
accomodate a handful of options for a combo box. plus, I seem to be

running
into issues if the worksheet with the applicable values is not the active
worksheet when the form is displayed. being able to hand-type the values

like
you can in MS Access would be so much nicer.

Is there a way to do this in Excel? Am I missing something?

Thanks, Joel




  #10   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 27,285
Default Excel combo box - value list?

Possibly you have an invalid reference in the machine where you say it
doesn't compile. After the error, in the VBE hit reset, then go into
tools=References and see if you have a reference marked as MISSING. If so,
fix it.

--
Regards,
Tom Ogilvy


"chan b" <chan wrote in message
...
I noticed that in vba 6.3, version 9972 the additem method doesn't

compile,
but it does in verison 9969. Any body seen that??

"Joel" wrote:

Harald,
Thanks, this helps.

And, unless they add more months to the year, this combo box list

will
pretty much always contain 12 values. : )

Joel

"Harald Staff" wrote:

Hi Joel

You don't have to data bind it. If you have few values (<20 or so)

then code
is easier:

Private Sub UserForm_Initialize()
With Me.ComboBox1
.AddItem "Beer"
.AddItem "Wine"
.AddItem "Bourbon"
End With
End Sub

With longer lists I find a bound worksheet easier to maintain.

HTH. Best wishes Harald

"Joel" skrev i melding
...
I created a form through VBA in Excel, and added a combo box to it.

Much
to
my dismay, and unlike MS Access, it seems like the only way to

populate
the
rowsource property is to bind it to a column on a spreadsheet.

In MS Access, you can select rowsourcetype = value list, and then
hand-type
the values you'd like to show up in the combo box drop-down in the
rowsource
property.

I really don't want to have to add another whole worksheet to my

workbook
to
accomodate a handful of options for a combo box. plus, I seem to be
running
into issues if the worksheet with the applicable values is not the

active
worksheet when the form is displayed. being able to hand-type the

values
like
you can in MS Access would be so much nicer.

Is there a way to do this in Excel? Am I missing something?

Thanks, Joel





Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Combo List in Excel Renee Excel Worksheet Functions 1 January 27th 10 08:31 PM
How do I bind a list in Excel to a combo box on a userform MikeM Excel Programming 3 June 14th 05 01:53 PM
eXceL 2003 - list or combo box question David Gerstman Excel Discussion (Misc queries) 2 May 23rd 05 03:58 PM
List box or combo box on an Excel spreadshee... city Excel Worksheet Functions 1 April 7th 05 09:31 PM
Sorting Excel combo box list Ballistix Excel Programming 1 October 20th 03 12:42 AM


All times are GMT +1. The time now is 04:24 PM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"