Avatar billede bejstrup Juniormester
14. april 2005 - 07:25 Der er 8 kommentarer og
1 løsning

"Lyskryds" i userfomr

Hej, eksperter.
Jeg har en userform, hvor jeg ønsker en "lampe" dvs. en cirkel der skifter farve. Den skal fungere således at når:
der i celle A1 i ark1 står 1, så skal "lampen" vise grøn
der i celle A1 i ark1 står 2, så skal "lampen" vise gul
der i celle A1 i ark1 står 3, så skal "lampen" vise rød

Jeg vil gerne have en kolonne med 6 lamper, hvor lampe 1 er afhængig af resultatet i celle A1 i ark1, lampe 2 er afhængig af resultatet i celle A2 osv.

Det er en meget central funktion i mit projektstyringsværktøj, så jeg håber meget at i kan hjælpe mig :o)
Avatar billede bejstrup Juniormester
14. april 2005 - 07:26 #1
userform selvfølgelig.....stavejørgen!!
Avatar billede sjap Praktikant
14. april 2005 - 16:01 #2
Jeg har ikke rigtigt nogen erfaring med userforms, så jeg ved ikke om dette virker, men det er vel forsøget værd:

Indsæt følgende makro som regnearkets kode - altså det hvor A1 skal læses (højreklik på fanebladet, vælg "Vis programkode").

Private Sub Worksheet_Change(ByVal Target As Excel.Range)

If Target.Address = "$A$1" Then
    With Sheets("Dialogboks1").Shapes("Oval 4").Fill
        Select Case Range("$A$1")
            Case 1
                .ForeColor.RGB = RGB(0, 255, 0)
            Case 2
                .ForeColor.RGB = RGB(255, 255, 0)
            Case 3
                .ForeColor.RGB = RGB(255, 0, 0)
            Case Else
                .ForeColor.RGB = RGB(0, 0, 0)
        End Select
    End With
End If

End Sub


Du må lige selv finde ud af dine egne navne for "Dialogboks1" og "Oval 4"
Avatar billede bejstrup Juniormester
14. april 2005 - 18:28 #3
Det virker ikke rigtigt. Jeg tror også at koden skal stå i userforms programkode, men det virker alligevel ikke :-(
Avatar billede bejstrup Juniormester
14. april 2005 - 18:30 #4
Jeg ved heller ikke om jeg evt. bliver nødt til at anvende "image" som lampe, da jeg ikke ved hvordan jeg ellers kan sætte sådan en cirkel ind som kan navngives.
Avatar billede sjap Praktikant
14. april 2005 - 18:36 #5
Som sagt så har jeg ikke rigtigt styr på userforms, men for en god ordens skyld: Har du ændret navnene til dine navne? Ellers virker det i hvert tilfælde ikke.

Det som jeg har lavet ovenfor virker når userformen er lukket. Jeg ved ikke hvad der sker, når den er åben.

Måske skal noget kode placeres i userformen, men så forstår jeg det ikke. Ovennævnte programstump afvilkes når celle A1 (i det faneblad, hvor koden er placeret) ændrer sig. Den hændelse kan du KUN fange her og ikke fra en userform. Så det program du vil afvikle for at ændre farven skal altså startes herfra.
Avatar billede bak Forsker
14. april 2005 - 19:43 #6
Du opretter 9 ens images på din userform. I de første tre indlæser du et billede i hver (grøn, gul og rød) så du har oprettet fx i paint.
De første 3 skal bare være et sted på userformen, de gemmes ved userformers aktivering.
De sidste 6 placerere du så ordenligt.

Indsæt denne kode i userformens kodemodul

Private Sub UserForm_Activate()
  Dim x As Image
  Dim y As Variant
  Dim i As Long
  y = Array(Image4, Image5, Image6, Image7, Image8, Image9)
  Image1.Visible = False
  Image2.Visible = False
  Image3.Visible = False
  For i = LBound(y) To UBound(y)
      Set x = y(i)
      Select Case Range("A" & i + 1)
        Case 1: x.Picture = Image1.Picture
        Case 2: x.Picture = Image2.Picture
        Case 3: x.Picture = Image3.Picture
      End Select
  Next
End Sub
Avatar billede bak Forsker
14. april 2005 - 19:47 #7
Avatar billede bejstrup Juniormester
15. april 2005 - 08:52 #8
YES, det er bare super. I er bare geniale :o)
Hvis du sender et svar, så får du lige nogle velfortjente point.
Avatar billede bak Forsker
15. april 2005 - 09:21 #9
:-)
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
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

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