Hej!
Det är enklare att låta comboboxen lämna ifrån sig sitt värde än att hämta värdet från comboboxen, men det hela förutsätter att du kan koda i VBA.
Det hela förutsätter även att comboboxen är av typen activex control. Det finns två olika att välja mellan när man lägger till en sådan.
Gör så här:
1. Dubbelklicka på comboboxen när du är i designläge. Då kommer du in i kodfönstret. Om du inte kommer in i kodfönstret så är du inte i designläge och får gå in i det först först (fliken utvecklare, markera ikonen desingläge).
2. Om du kom in i kodfönstret ser du en kod som liknar koden nedan. Det kan vara så att din combobox heter något annat.
Private Sub ComboBox1_Change()
End Sub
3. Mellan raderna ovan skriver vi
Dim ws As Worksheet
Set ws = ActiveSheet
ws.Cells(2, 4).Value = ComboBox1.Value
Då hamnar värdet av rullgardinen i cellen på rad 2 och kolumn 4 där rad 1 är första raden och kolumn 1 är första kolumnen, med andra ord är 2,4 detsamma som D2.
4. Nu ville du ha ut en del av värdet. Ändra då på koden till:
Dim ws As Worksheet
Dim strValueIn As String
Dim strValueOut As String
Set ws = ActiveSheet
strValueIn = ComboBox1.Value
strValueOut = Mid(strValueIn, 5, 3)
ws.Cells(2, 4).Value = strValueOut
Koden ovan hämtar värdet i comboboxen till strValueIn. Därefter hämtas en del av denna sträng ut med Mid(). Konkret hämtas tre tecken från position fem och framåt. Detta läggs i strValueOut. Detta värde läggs sedan i cellen D2.
Mvh
Kihlman