View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
JLGWhiz JLGWhiz is offline
external usenet poster
 
Posts: 3,986
Default Combobox Events to Shrink and Expand Width

I think you have stumbled across an anomaly. I tried this code.

Private Sub cboProductCode_Change()
' put combobox to it original width
cboProductCode.ColumnCount = 1
's = Timer + 2
'Do While Timer < s
' DoEvents
'Loop
If cboProductCode.ColumnCount = 1 Then
cboProductCode.Width = 53
End If
End Sub

Private Sub cboProductCode_DropButtonClick()
' expand combobox to view list
cboProductCode.ColumnCount = 2
cboProductCode.Width = 120
End Sub

When running the code with the comment marks removed, it changes the size of
the combobox OK, but as soon as the dropdown arrow is clicked, it adds the
second column back in and expands the size. Yet, I can manually walk through
the code to reduce the size back to one column and 53 pts and it allows me to
drop down with only one column visible. I threw in the delay to see if that
would give the same effect as doing it manually, but no luck. Weird! Sorry
Ryan, guess I can't help.



"RyanH" wrote:

This is something that is a thorn in my side that I can't figure out. It's
probably not worth the time I have put into it, but that is programming I
guess.

I have a combobox that contains a list of 2 columns. Column 1 is displayed
in the textbox portion of the combobox and it contains two letter intials
that represent what is in Column 2, which is the description. For example,

' Product Code Description
Column 1 Column 2
PF Plastic Face
CC Custom Cabinet
PT Parts

Column 1 is the Product Code and shows in the textbox portion. Column 2
shows in the drop down list. The combobox needs to have an original width =
53, but I need to expand it to 120 if the user wants to change the product
code so they can see the full description.

This is what I have but the combobox doesn't go back to the origianl size of
53 after the combobox has been changed. Anyone have any ideas? This what I
have:

Private Sub cboProductCode_Change()
' put combobox to it original width
cboProductCode.Width = 53
End Sub

Private Sub cboProductCode_DropButtonClick()
' expand combobox to view list
cboProductCode.Width = 120
End Sub
--
Cheers,
Ryan