ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   ComboBox fails when last item selected first (https://www.excelbanter.com/excel-programming/335709-combobox-fails-when-last-item-selected-first.html)

MBlake[_2_]

ComboBox fails when last item selected first
 
Hi,
I have a userform combobox that contains 9 listed items. When the user
selects an item the linked cell is displayed in a text area below the
combobox. The code is from a John Walkenbach book and works fine except
when the user opens the userform and immediately selects the last option
from the combobox. If they choose any other option all works fine. Please
could someone advise how to stop the error occurring? -

Private Sub UpdateForm()
ComboBoxTopics.ListIndex = CurrentTopic - 1
Me.Caption = HelpFormCaption & _
" (" & CurrentTopic & " of " & TopicCount & ")"

With LabelText
.Caption = HelpSheet.Cells(CurrentTopic, 2)
.AutoSize = False
.Width = 212
.AutoSize = True
End With
With Frame1
.ScrollHeight = LabelText.Height + 5
.ScrollTop = 1
End With

If CurrentTopic = 1 Then
NextButton.SetFocus
ElseIf CurrentTopic = TopicCount Then
PreviousButton.SetFocus
End If
PreviousButton.Enabled = CurrentTopic < 1
NextButton.Enabled = CurrentTopic < TopicCount
End Sub

--------------------------------------
Thanks,
Mickey



MBlake[_2_]

ComboBox fails when last item selected first
 
Hi gareth,
The error is Runtime Error 2110 - Can't move focus to the control because
it is invisible, not enabled or of a type that does not accept the focus.

Mickey


"Gareth" wrote in message
...
This rather depends on what else is going on on the form.

I assume there's a couple of buttons, label and a frame from the code.
What events are there for the combo box?

More importantly - what error message do you get?


MBlake wrote:
Hi,
I have a userform combobox that contains 9 listed items. When the user
selects an item the linked cell is displayed in a text area below the
combobox. The code is from a John Walkenbach book and works fine except
when the user opens the userform and immediately selects the last option
from the combobox. If they choose any other option all works fine.
Please could someone advise how to stop the error occurring? -

Private Sub UpdateForm()
ComboBoxTopics.ListIndex = CurrentTopic - 1
Me.Caption = HelpFormCaption & _
" (" & CurrentTopic & " of " & TopicCount & ")"

With LabelText
.Caption = HelpSheet.Cells(CurrentTopic, 2)
.AutoSize = False
.Width = 212
.AutoSize = True
End With
With Frame1
.ScrollHeight = LabelText.Height + 5
.ScrollTop = 1
End With

If CurrentTopic = 1 Then
NextButton.SetFocus
ElseIf CurrentTopic = TopicCount Then
PreviousButton.SetFocus
End If
PreviousButton.Enabled = CurrentTopic < 1
NextButton.Enabled = CurrentTopic < TopicCount
End Sub

--------------------------------------
Thanks,
Mickey




Gareth[_6_]

ComboBox fails when last item selected first
 
Hi Mickey,

I still need a bit more info:

At any stage in your code are you making anything visible/invisible,
enabling/disabling or creating controls?

When the user selects something on the combo box an event is firing.
What is the code for that event?

Gareth



MBlake wrote:
Hi gareth,
The error is Runtime Error 2110 - Can't move focus to the control because
it is invisible, not enabled or of a type that does not accept the focus.

Mickey


"Gareth" wrote in message
...

This rather depends on what else is going on on the form.

I assume there's a couple of buttons, label and a frame from the code.
What events are there for the combo box?

More importantly - what error message do you get?


MBlake wrote:

Hi,
I have a userform combobox that contains 9 listed items. When the user
selects an item the linked cell is displayed in a text area below the
combobox. The code is from a John Walkenbach book and works fine except
when the user opens the userform and immediately selects the last option
from the combobox. If they choose any other option all works fine.
Please could someone advise how to stop the error occurring? -

Private Sub UpdateForm()
ComboBoxTopics.ListIndex = CurrentTopic - 1
Me.Caption = HelpFormCaption & _
" (" & CurrentTopic & " of " & TopicCount & ")"

With LabelText
.Caption = HelpSheet.Cells(CurrentTopic, 2)
.AutoSize = False
.Width = 212
.AutoSize = True
End With
With Frame1
.ScrollHeight = LabelText.Height + 5
.ScrollTop = 1
End With

If CurrentTopic = 1 Then
NextButton.SetFocus
ElseIf CurrentTopic = TopicCount Then
PreviousButton.SetFocus
End If
PreviousButton.Enabled = CurrentTopic < 1
NextButton.Enabled = CurrentTopic < TopicCount
End Sub

--------------------------------------
Thanks,
Mickey






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

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