View Single Post
  #5   Report Post  
Posted to microsoft.public.excel.programming
PW PW is offline
external usenet poster
 
Posts: 9
Default ComboBox displays last selection

Yes, i agree. If I stop the macro, it resets and works OK. Here's one of
the form code.
No. 1:

Private Sub CommandButton2_Click()
EnterMenu.Hide
Sheets("Estimate").Select
ProjectNoMenu.Show

End Sub

Private Sub CommandButtonSaveRecordstoDatabase_Click()
PutData
End Sub

Private Sub UserForm_Initialize()
EnterMenu.StartUpPosition = CenterOwner
End Sub

No. 2 (for the combobox):

Private Sub ProjectNumberComboBox_Change()
'Brings up combo box with project numbers from column on "Dropdown Values"
worksheet
'
Dim PrNo As String
PrNo = ProjectNumberComboBox.Text
Sheets("Sample").Select
Range("a2") = PrNo
ProjectNoMenu.Hide
ContinueSearchData1

End Sub

Private Sub UserForm_Initialize()
Dim rowx As String
Dim PNRng As Range
Dim z As Variant

'ProjectNoMenu.StartUpPosition = CenterOwner

For Each C In ProjectNoMenu.Controls
If TypeOf C Is MSForms.ComboBox Then
C.Value = ""
End If
Next
Sheets("Dropdown Values").Select

rowx = Range("A2").End(xlDown).row
'Set the range to loop through
Set PNRng = Sheets("Dropdown Values").Range("A2:A" & rowx)

'Loops through the ranges
For Each z In PNRng

'Adds an item to the list
ProjectNumberComboBox.AddItem z.Value

Next z

ProjectNumberComboBox.ListIndex = -1
Sheets("Estimate").Select
End Sub



"brzak" wrote:

I can only guess tht you're not resetting on all the possible events
where the user form appears.

A sample of the code would make it easier to see where the problem is.

Brz

On Jul 24, 10:23 pm, pw wrote:
The first time I run the macro, it works fine. The second time I can't get
the combobox to be blank even with the code you used below. Any idea why?

"brzak" wrote:
Make use of teh ListIndex property


From VBA Help:
"Values of ListIndex range from €“1 to one less than the total number
of rows in a list (that is, ListCount €“ 1). When no rows are selected,
ListIndex returns €“1"


so at whicever event you want the value to be cleared and force the
user to make a chose, set:


combobox1.listindex = -1


Brz


On Jul 23, 11:21 pm, PW wrote:
I have a combo box on a user form. The first time I run it, it works fine.
The second time I run it. It has the previous selection in it. How can I
have it come up blank?


Thank You,


PW