Avatar billede renekoemler Nybegynder
11. juni 2002 - 13:29 Der er 7 kommentarer og
1 løsning

Combobox værdier fra regneark

Hej

jeg vil gerne sætte nogle navne fra et regneark (excel) ind i en kombinationsboks i VBA.

Har forsøg med Combobox.AddItem.Range arknavn A2:A8

men får det desværre ikke til at spille

på forhånd tak
René
Avatar billede bak Forsker
11. juni 2002 - 14:54 #1
Er det en userform eller bare en combobox i et regneark?
Avatar billede renekoemler Nybegynder
11. juni 2002 - 14:58 #2
Hej bak,

Der er i en userform og linien skal vel ligge i Userform_Initialize .

vh René
Avatar billede bak Forsker
11. juni 2002 - 15:14 #3
Det behøver den faktisk ikke.
i VBA-editoren markere du comboboxen.
tryk F4 for properties
I properties for comboboxen finder du feltet RowSource.
Der skriver du A2:A8

ellers kan du gøre sådan her
Private Sub UserForm_Initialize()
Dim MyUniqueList As Variant, i As Long
    Set rng = ThisWorkbook.Worksheets("Sheet1").Range("a1:a8")
    With Me.ComboBox1
        .Clear
        For i = 1 To 10
            .AddItem rng.Cells(i, 1)
        Next i
        .ListIndex = 0
    End With
End Sub
Avatar billede bak Forsker
11. juni 2002 - 15:15 #4
for i = 1 to 8 for dit vedkommende
Avatar billede renekoemler Nybegynder
11. juni 2002 - 15:31 #5
Hej Igen bak,

Det virker (brugte RowSource) - tak skal du have.

Jeg kom bare til at tænke på at hvis nu jeg tilføjer navne så skal jeg jo ind og rette i koden. Kan man henvise til en hel kolonne?

Kan vel muligvis laves ved at køre et loop (som i kode eks.)indtil vi støder på en tom celle.

/rene
Avatar billede renekoemler Nybegynder
11. juni 2002 - 15:44 #6
Hej igen igen,

jeg legede lidt med din kode og vupti - Tak skal du have

Private Sub UserForm_Initialize()

  Set rng = ThisWorkbook.Worksheets("Medlemmer")
  raekke = 1
 
  While rng.Cells(raekke, 1).Value <> ""
    raekke = raekke + 1
  Wend
 
    With Me.CBox_navn
        .Clear
        For i = 1 To raekke
            .AddItem rng.Cells(i, 1)
        Next i
        .ListIndex = 0
    End With


End Sub
Avatar billede janvogt Praktikant
11. juni 2002 - 15:49 #7
Jeg plejer at navngive området i selve Excelarket - f.eks. "Data"
I Userform_Initialize kan du så lægge følgende linie:
Comboboks1.RowSource = "Data"
Du kan evt. lave dit navngivne område som et dynamisk område, som automatisk udvider sig, hvis du senere tilføjer flere emner.
Avatar billede renekoemler Nybegynder
11. juni 2002 - 15:52 #8
Hej Jan

tak for rådet

/rene
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester