07. november 2002 - 22:57Der er
14 kommentarer og 1 løsning
ComboBox i Userform
Hvordan får jeg comboboxen i en userform til at 1) vise en liste med "I dag" og yderligere 6 dage tilbage, og 2)overføre den valgte dato til et regneark ?
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
OK; hvis hele min makro til userformen ser ud som nedenunder, hvor skal jeg så sætte de tre linier ? Private Sub CommandButton1_Click() Dim wksData As Worksheet Dim ctl As Control Dim lRow As Long
Set wksData = Worksheets("Data") ' Finder næste ledige række i Data-arket. lRow = wksData.Range("A65536").End(xlUp).Row + 1
' Tilføjer teksten i tekstboxen til næste række ledige celler. With wksData .Cells(lRow, 1) = Me.TextBox1.Value .Cells(lRow, 2) = Me.TextBox2.Value .Cells(lRow, 3) = Me.TextBox3.Value .Cells(lRow, 19) = Me.ComboBox1.Value
'Lægger tid ind i den valgte kategorikolonne.
For Each ctl In Me.Frame1.Controls If TypeName(ctl) = "OptionButton" Then If ctl.Value Then .Cells(lRow, Val(ctl.Tag)).Value = Me.TextBox3.Value End If End If Next ctl End With
Jeg har lavet sub en, men når makroen kommer til ComboBox1.AddItem Date vises der en kørselsfejl: Adgang blev nægtet... Jeg er 100% sikker på, at den hedder combobox 1
Jeg prøver lige. Tror du i øvrigt at jeg kan slippe afsted med:Cells(lRow, 19) = Me.ComboBox1.Value -eller skal jeg nøjes med at skrive combobox1 efter lighedstegnet ? Meningen er jo, at datoen skal lægges i kolonne 19 i den "næste ledige række"...?
Nej - det driller også mig nu *S* men løsningen er at omdøbe makroen fra
UserForm1_Activate()
til
Sub UserForm_Initialize() ComboBox1.Clear ComboBox1.AddItem Date ComboBox1.AddItem Date - 1 ComboBox1.AddItem Date - 2 End Sub
Læg forøvrigt mærke til at jeg clearer comboboksen hver gang den aktiveres i dette eksempel - det kan nogen gange gøre en forskel også...
P.s. Jeg opdagede lige at du har arbejdet med lister som inddata til compboksen i det tilsendte regneark - det virker ikke, da en dato i celle ikke er en dato, men et løbenummer. Hvis du bare ville have tal eller tekst i comboboksen var det ellers en god løsning.
Ja, man må jo prøve sig frem *G*, ellers kommer man ingen vegne. Du skal i hvert fald have tak for hjælpen, nu kan jeg kaste mig over loops der finder bestemte datoer, bestemte linier... Håber bare på at chefen værdsætter det, når vi engang skal tale om personalegoder *GGG*.
Tak for points og held og lykke med det hele... - nu vil jeg gå i seng, så jeg være bare nogenlunde frisk til morgendagens udfordringer *G*
Synes godt om
Ny brugerNybegynder
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.