28. december 2004 - 18:42Der er
7 kommentarer og 1 løsning
Indsættelse af markeringer i checkbox i celle
Jeg har en UserForm, hvor jeg har 3 checkboxe.
Jeg har brug for en makro, der indsætter et "X" i cellerne A1, A2 og A3, hvis der er lavet markeringer i checkboxene (checkbox 1, checkbox 2 og checkbox 3).
Hvordan får man checkboxen til at være markeret som standard?
Private Sub CommandButton1_Click() If CheckBox1 = True Then [a1] = "x" Else [a1] = "" If CheckBox2 = True Then [a2] = "x" Else [a2] = "" If CheckBox3 = True Then [a3] = "x" Else [a3] = "" End Sub
Hvis du vil have sat krydset i samme øjeblik checkboxen klikkes på dksl du oprette en for hver checkbox:_ Private Sub CheckBox1_Click() If CheckBox1 = True Then [a1] = "x" Else [a1] = "" End Sub
Markeret som standard: Private Sub UserForm_Initialize() CheckBox1 = True CheckBox2 = True CheckBox3 = True End Sub
Jeg troede jeg kunne tilrette det til mit behov.... Det kunne jeg ikke..
Hvad går der galt her?
'Indsætter celle L2 i nye række i kolonne H Range("I" & ActiveCell.Row) = [M2] 'Indsætter dags dato i nye række i kolonne A Range("B" & ActiveCell.Row) = Date 'Sætter "X" i kollonne E = Henrik If cbHenrik = True Then Range("E" & ActiveCell.Row) = "X" Else: Range("E" & ActiveCell.Row) = "" 'Sætter "X" i kollonne E = Thomas If cbThomas = True Then Range("D" & ActiveCell.Row) = "X" Else: Range("D" & ActiveCell.Row) = "" 'Sætter "X" i kollonne C = Steen If cbSteen = True Then Range("C" & ActiveCell.Row) = "X" Else: Range("C" & ActiveCell.Row) = ""
Formålet er at lige inden dette skykke makro er der blevet indsat en række. Som du kan se, så kopieres en celle fra M2 til kolonne Kolonne I og indsættes dagsdato i kolonne B i den aktive række, hvilket er den der lige er lavet. Det virker!
Hvorfor virker det andet så ikke? Jeg skal lige sige at de ":" der står efter "Else" kan jeg ikke få lov til at slette!!
Mht. Makering som standard, så har jeg en komandoknap, som åbner UserForm, hvor jeg laver markeringerne i CheckBox. Er det ikke her jeg skal skrive de 3 linjer Makro?
Else skal stå på samme linje som starten af IF-sætningen: Ex:If cbHenrik = True Then Range("E" & ActiveCell.Row) = "X" Else Range("E" & ActiveCell.Row) = ""
Hvorfor det? Jeg har stadig probelmer med Markering som standard!
Hvilket problem har du med Markering som standard!,? er ckeckboxene ikke markerede eller ????
mht. If cbHenrik = True Then Range("E" & ActiveCell.Row) = "X" Else Range("E" & ActiveCell.Row) = "" hvis else står på næste linie som du viste det, skal hver if sætning afsluttes med end if
Jeg har lagt formlen i den komandoknap, som åbner UserFormen. Den kommer til at se således ud:
Private Sub cmdRegistrerKørsel_Click() ufKørsel.Show 'Sætter markeringer i CheckBox i UserForm ufKørsel cbHenrik = True cbSteen = True cbThomas = True End Sub
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.