select in a combobox based on textbox value

kelly mort

Well-known Member
Joined
Apr 10, 2017
Messages
2,169
Office Version
  1. 2016
Platform
  1. Windows
Hello,
I need another help today too. I have a textbox called txtCurrentUser on a userform.
The value in txtCurrentUser could be as:
M1Afighter
M2Bswimmer
M3Cdrummer
M4Dpainter
M5 crier(contains space)

So this is what i wanna do: when the 4th character in txtCurrentUser is say "f", then i wanna select the first item in a combobox called Cmb1. And when the 4th character in txtCurrentUser is say "s", then i wanna select the second item in the Cmb1. This can go down to say 12 conditions. I need guidance with how to achieve my goal.

Thanks in advance.
Kelly
 

Excel Facts

How to find 2nd largest value in a column?
MAX finds the largest value. =LARGE(A:A,2) will find the second largest. =SMALL(A:A,3) will find the third smallest
Assuming you run the code relating to the Textbox/Combobox from a CommandButton
Then you need something like this code:-
Code:
Private Sub CommandButton1_Click()
With ComboBox1
    Select Case Mid(TextBox1.Text, 4, 1)
        Case "f": .Value = .List(0)
        Case "s": .Value = .List(1)
    End Select
End With
End Sub
 
Last edited:
Upvote 0
Okay it is working fine. But is there a way to display the item selected in the combobox? It seemed not to appear in the combobox and i have to select it again to make it show. Thanks once again. Kelly
 
Upvote 0
I have tried downloading several times but not going through. Page loads then stops
 
Upvote 0
Okay i have used internet explorer to download it finally. Now testing it. Thanks
 
Upvote 0
Okay cool with it now. I was placing the code at the wrong event to trigger it. Just noticed. Thanks again.

One last thing maybe: how do i get the first two characters instead. Say "M2".

Kelly
 
Upvote 0
If you mean the first 2 characters of the value selected in the combobox, then as below in Red.
Code:
Private Sub CommandButton1_Click()
With ComboBox1
    Select Case Mid(TextBox1.Text, 4, 1)
        Case "f": .Value = [COLOR=#FF0000]Left(.List(0), 2)[/COLOR]
        Case "s": .Value [COLOR=#FF0000]= Left(.List(1), 2)[/COLOR]
    End Select
End With
End Sub
 
Upvote 0
I want the first 2 characters in the textbox to make the selection in the combobox. I think something like this maybe:
Code:
Private Sub CommandButton1_Click()
With ComboBox1
    Select Case Left(TextBox1.Text, 2, 2)
        Case "M2": .Value = .List(0)
        Case "M3": .Value = .List(1)
    End Select
End With
End Sub
But i have not tried it yet because i am not with my pc at the moment.
 
Upvote 0
Sorry I misunderstood !!!
I think this is what you want !!!:-
Code:
Select Case Left(TextBox1.Text,  2)
 
Upvote 0

Forum statistics

Threads
1,224,823
Messages
6,181,181
Members
453,022
Latest member
Mohamed Magdi Tawfiq Emam

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top