ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Load a Combo Box Object upon workbook open (https://www.excelbanter.com/excel-programming/309988-load-combo-box-object-upon-workbook-open.html)

ExcelMonkey[_160_]

Load a Combo Box Object upon workbook open
 
I have a combo box which I use to load worksheet names into. However
have noticed that it does not load the names upon opening of th
spreadsheet. That is, when I open the spreadsheet, the box does no
include the entire list. This makes sense since I have used the clic
event to trigger the routine. However when I click on the combo bo
upon opening the spreadsheet it still does not load the list.

I have to go to the code and run it to load the comb box. At thi
point it is fine. Why is this?

Secondly is there a way that I can load the combo box upon opening th
spreadsheet? Teh code for the combo box is in the sheet module and i
a private sub. How do I trigger this private sub upon opening th
spreadsheet. I know I have to use a workbook_open event to tirgger it
But its a private sub routine. Can anyone help me with this?

Thanks


'This loads the ComboBox list
Private Sub SheetNameCmbBx_Click()
Dim Sh As Worksheet
Dim sVal As String

With SheetNameCmbBx
sVal = .Text
.Clear
For Each Sh In ActiveWorkbook.Sheets
If Sh.Name < "Inputs" Then
.AddItem Sh.Name
End If
Next
.Value = sVal
End With

End Su

--
Message posted from http://www.ExcelForum.com


Tom Ogilvy

Load a Combo Box Object upon workbook open
 
In a general sub

'This loads the ComboBox list
Sub LoadComboBox( bflag as Boolean)
Dim Sh As Worksheet
Dim sVal as String
With ThisWorkbook.Worksheets("Sheet1").ComboBox1
sVal = .Text
.Clear
For Each Sh In ActiveWorkbook.Sheets
If Sh.Name < "Inputs" Then
. AddItem Sh.Name
End If
Next
if bFlag then
.Value = sVal
Worksheets(.Value).Activate
End if
End With
End Sub

Then in your current click event
Private Sub Combobox1_Click()
LoadCombobox True
End Sub

Then in the ThisWorkbook module

Private Sub Workbook_Open()
Loadcombobobox False
End Sub

--
Regards,
Tom Ogilvy



"ExcelMonkey " wrote in message
...
I have a combo box which I use to load worksheet names into. However I
have noticed that it does not load the names upon opening of the
spreadsheet. That is, when I open the spreadsheet, the box does not
include the entire list. This makes sense since I have used the click
event to trigger the routine. However when I click on the combo box
upon opening the spreadsheet it still does not load the list.

I have to go to the code and run it to load the comb box. At this
point it is fine. Why is this?

Secondly is there a way that I can load the combo box upon opening the
spreadsheet? Teh code for the combo box is in the sheet module and is
a private sub. How do I trigger this private sub upon opening the
spreadsheet. I know I have to use a workbook_open event to tirgger it.
But its a private sub routine. Can anyone help me with this?

Thanks


'This loads the ComboBox list
Private Sub SheetNameCmbBx_Click()
Dim Sh As Worksheet
Dim sVal As String

With SheetNameCmbBx
sVal = .Text
Clear
For Each Sh In ActiveWorkbook.Sheets
If Sh.Name < "Inputs" Then
AddItem Sh.Name
End If
Next
Value = sVal
End With

End Sub


---
Message posted from http://www.ExcelForum.com/





All times are GMT +1. The time now is 10:05 AM.

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