Avatar billede jan Novice
28. januar 2018 - 00:03 Der er 20 kommentarer og
1 løsning

Afkrydsningsfelt

Hvordan får man afkrydsningsfelter til at skifte baggrunds farve, til f.eks grøn ved markering ?
28. januar 2018 - 06:18 #1
Det ser ud til, at det ikke er muligt at skifte farve på selve afkrydsningsfeltet, men du kan styre den tilhørende label


Private Sub chkFarveskift_Click()
    lblFarveskift.BackStyle = 1 ' normal
    If chkFarveskift.Value = -1 Then
        lblFarveskift.BackColor = vbGreen
    Else
        lblFarveskift.BackColor = vbWhite
    End If
End Sub
Avatar billede jan Novice
28. januar 2018 - 22:16 #2
Thor jeg kan ikke få det til at virke.

Når jeg genererer en hændelsesprocedure får jeg følgende tekst...

Private Sub Ansættelsesvilkår__miljø_Click()

End Sub

Når jeg indsætter din tekst ser den sådan ud..

Private Sub Ansættelsesvilkår__miljø_Click()
Private Sub chkFarveskift_Click()
    lblFarveskift.BackStyle = 1 ' normal
    If chkFarveskift.Value = -1 Then
        lblFarveskift.BackColor = vbGreen
    Else
        lblFarveskift.BackColor = vbWhite
    End If
End Sub

Jeg prøver så at slette en at de to første linier, men uanset hvilken en af disse jeg sletter, kommer der fejlmelding.
Avatar billede falster Ekspert
28. januar 2018 - 23:06 #3
Felter
Label: Klik_Etiket
Afkrydsningsfelt: Klik

Hændelsesprocedure (ovenstående "oversat/rettet"):

Private Sub Klik_Click()
    Klik_Etiket.BackStyle = 1 ' normal
    If Klik.Value = -1 Then
        Klik_Etiket.BackColor = vbGreen
    Else
        Klik_Etiket.BackColor = vbWhite
    End If
End Sub
29. januar 2018 - 06:08 #4
1) Slet linje 2
2) Erstat chkFarveskift med navnet på din checkboks
3) Erstat lblFarveskift med navnet på den label der er knyttet til din checkboks
Avatar billede terry Ekspert
29. januar 2018 - 11:54 #5
On a continuous form or datasheet you don’t have a label for each record, so another idea is maybe required.
Place a text box behind the checkbox. Then using conditional formatting you change the colour of the text box depending on the value of the check box. This method doesn’t require any vba :-)
There are a number of videos on youtube explaining how to use conditional formatting, heres one for a start
https://www.youtube.com/watch?v=vNdanVYq7MU

Quick explanation
1: Check box name is chkBox
2: Right click text box and choose Conditional formatting
3: Press New Rule
4: In Left Drop down choose Expression is
5: In texct box to right of drop down write [chkbousx] = -1
6: Then choose how you want to highlight the text when checkbox is checked (-1). For example Colour Red
7: Press OK.

Now check to see what happens when you change value of checkbox

Idea can also be used on Single Form
Avatar billede terry Ekspert
29. januar 2018 - 13:34 #6
5: In text box to right of drop down write [chkbox] = -1
Avatar billede jan Novice
30. januar 2018 - 12:34 #7
Det giver mig stadig problemer.

Private Sub Opsigelse_Click()
lblFarveskift.BackStyle = 1 ' normal
    If Opsigelse.Value = -1 Then
        Opsigelse_Navn.BackColor = vbGreen
    Else
        Opsigelse_Navn.BackColor = vbWhite
    End If
End Sub

Hvor "Opsigelse" = navn på afkrydsningsfelt
og " Opsigelse_navn" = navn på tekst felt.

Jeg modtager følgende fejlmeldning:
Invalid outside procedure;
Denne fejl forekommer, når en hændelse ikke er blevet kørt, fordi placeringen af hændelsens logik ikke kan evalueres. Hvis egenskaben OnOpen for en formular f.eks. er angivet til =[Felt], forekommer denne fejl, fordi det forventes, at det skal være navnet på en makro eller en hændelse, der skal køres, når hændelsen opstår.

Det er ikke muligt at anvende betinget formatering til hverken afkrydsningsfelt eller tekstboks.
30. januar 2018 - 12:38 #8
Du mangler at omdøbe

lblFarveskift.BackStyle = 1 ' normal

Skal være

Opsigelse_Navn.BackStyle = 1 ' normal

Men der er nok ikke fejlen alene - det lyder lidt som om du har fået placeret koden et forkert sted, men det er lidt svært at gennemskue uden at se databasen.
Avatar billede terry Ekspert
30. januar 2018 - 15:55 #9
Your welcome to send the dB to me and I'll take a look

ekspertenATsanthell.dk

AT = @
Avatar billede jan Novice
31. januar 2018 - 10:41 #10
Tak for hjælpen, nu fungerer det.
For mange år siden var der noget med at man gav point til den der løste opgaven. Gør man ikke det mere?
31. januar 2018 - 10:48 #11
Super. Nej, der gives ikke synlige point længere, men når du markerer et svar som korrekt får den der har skrevet svaret usynlige point, der afspejler sig i brugerens status.
Avatar billede jan Novice
31. januar 2018 - 10:54 #12
Jeg har faktisk et supplerende spørgsmål.

Nå nu tekstfeltet hedder "Sygdom, barsel, orlov", kan jeg så programmer så jeg beholder "," i tekstfeltet , eller skal de erstattes af et andet tegn?
31. januar 2018 - 10:58 #13
Øh - det ville jeg ikke bruge energi på. Navnet på et felt er jo "bare" en intern ting og ikke noget brugerne ser.
Avatar billede jan Novice
05. februar 2018 - 13:26 #14
Jeg bliver desværre nød til at vende tilbage.

Jeg har fået det til at fungerer som beskrevet ovenfor af Thor med følgende
Private Sub CIvil1_Click()
CIvil2.BackStyle = 1 ' normal
    If CIvil1.Value = -1 Then
        CIvil2.BackColor = RGB(204, 255, 221)
    Else
        CIvil2.BackColor = vbWhite
    End If
End Sub

Problemet er, at hvis jeg i post 1 laver en markereng i afkrydsningsfeltet, så skifter farven i tekstfelten ikke kun i post 1, men i alle poster. Jeg ønsker kun et farveskift i post 1 i dette eksempel og i det poster jeg fremadrettet aktivere afkrydsningsfeltet. I de øvrige poster hvor der ikke sker en aktivering skal tekstfeltet stadig være hvidt.
05. februar 2018 - 13:28 #15
Det er nok fordi du bruger en løbende form. Du skal så nok kigge på #5
Avatar billede jan Novice
05. februar 2018 - 13:37 #16
Tak for hurtig svar.

Problemet at, der gives ikke mulighed for betinget formatering ved anvendelse af afkrydsningsfelt, hverken afkrydsningsfeltet selv eller i tekstfeltet.
05. februar 2018 - 13:41 #17
Har du mulighed for at sende databasen ud af huset?
Avatar billede jan Novice
05. februar 2018 - 14:00 #18
Ja, det kan jeg godt
05. februar 2018 - 14:03 #19
Så kan du pøve at sende den enten til mig eller Terry.
Husk at vedlægge en beskrivelse af, hvor det er du har udfordringen.
Avatar billede jan Novice
05. februar 2018 - 14:15 #20
Hvordan vedhæfter jeg DB ? ( jeg prøver at sende til dig privat)
05. februar 2018 - 14:17 #21
Hvis du zip pakker den bør den slippe igennem.
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

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