Avatar billede tni Juniormester
18. januar 2010 - 14:36 Der er 6 kommentarer og
1 løsning

Betinget formatering. Excel 7

Jeg har lavet betinget formatering sådan at hvis
b1=1 så bliver c1 =rød (baggrunds farve)
b1=2 så bliver c1 =gul
b1=3 så bliver c1 =grøn
b1=4 så bliver c1 =blå

Nej jeg kan ikke kopier det ned på alle de andre celler
b2 og b3 osv
så peger alle celler mod c1.

Hvordan skal den drejes.
Avatar billede rosco Novice
18. januar 2010 - 15:00 #1
Indsæt denne i arkets kodemodul

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Range("A1:A95"), Target) Is Nothing Then
Application.ScreenUpdating = False
ActiveSheet.Unprotect
    With Target
    Select Case Target.Value
' Et 1 tal i kolonne A, farver kolonne b rød  i samme række
    Case "1"
        ActiveCell.Offset(-1, 1).Interior.ColorIndex = 3
        ActiveCell.Offset(-1, 1).Font.ColorIndex = 1
' Et 2 tal i kolonne A, farver kolonne b gul  i samme række
    Case "2"
        ActiveCell.Offset(-1, 1).Interior.ColorIndex = 6
        ActiveCell.Offset(-1, 1).Font.ColorIndex = 1
' Et 3 tal i kolonne A, farver kolonne b grøn  i samme række
    Case "3"
        ActiveCell.Offset(-1, 1).Interior.ColorIndex = 4
        ActiveCell.Offset(-1, 1).Font.ColorIndex = 1
' Et 4 tal i kolonne A, farver kolonne b blå  i samme række
    Case "4"
        ActiveCell.Offset(-1, 1).Interior.ColorIndex = 5
        ActiveCell.Offset(-1, 1).Font.ColorIndex = 1
      Case Else
        ActiveCell.Offset(0, 5).Interior.ColorIndex = xlNone
        ActiveCell.Offset(0, 5).Font.ColorIndex = xlAutomatic
    End Select
 
End With
End If
Application.ScreenUpdating = True
'ActiveSheet.Protect DrawingObjects:=False, Contents:=True, Scenarios:=True
End Sub
Avatar billede rosco Novice
18. januar 2010 - 16:30 #2
Range("A1:A95"), Skal selvfølgelig være Range("B1:B95"),
Avatar billede rosco Novice
18. januar 2010 - 16:35 #3
Nu er den rettet, (den er sakset fra et ark jeg selv bruger)

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Range("B1:B95"), Target) Is Nothing Then
Application.ScreenUpdating = False
ActiveSheet.Unprotect
    With Target
    Select Case Target.Value
' Et 1 tal i kolonne B, farver kolonne b rød  i samme række
    Case "1"
        ActiveCell.Offset(-1, 1).Interior.ColorIndex = 3
        ActiveCell.Offset(-1, 1).Font.ColorIndex = 1
' Et 2 tal i kolonne B, farver kolonne b gul  i samme række
    Case "2"
        ActiveCell.Offset(-1, 1).Interior.ColorIndex = 6
        ActiveCell.Offset(-1, 1).Font.ColorIndex = 1
' Et 3 tal i kolonne B, farver kolonne b grøn  i samme række
    Case "3"
        ActiveCell.Offset(-1, 1).Interior.ColorIndex = 4
        ActiveCell.Offset(-1, 1).Font.ColorIndex = 1
' Et 4 tal i kolonne B, farver kolonne b blå  i samme række
    Case "4"
        ActiveCell.Offset(-1, 1).Interior.ColorIndex = 5
        ActiveCell.Offset(-1, 1).Font.ColorIndex = 1
      Case Else
        ActiveCell.Offset(0, 1).Interior.ColorIndex = xlNone
        ActiveCell.Offset(0, 1).Font.ColorIndex = xlAutomatic
    End Select
 
End With
End If
Application.ScreenUpdating = True
'ActiveSheet.Protect DrawingObjects:=False, Contents:=True, Scenarios:=True
End Sub
Avatar billede tni Juniormester
29. januar 2010 - 14:04 #4
Jeg prøver den lige
Avatar billede tni Juniormester
29. januar 2010 - 15:04 #5
Jeg ved ikke hvor den skal ind.
Skal det stå som makro eller hvor skal den tastes.

Jeg er inde i vba modulet. men ved ikke hvor

jeg skal bruge den sådan at det er række a som skal skifte farve hvis tallet i række b har den valgde værdig.

Vil du maile et eksembel til mig. tni@os.dk
Avatar billede tni Juniormester
29. januar 2010 - 15:12 #6
Har tastet den ind. Og den er rigtig nok. Men den kører ikke
Avatar billede rosco Novice
02. februar 2010 - 20:29 #7
I det ark du skal bruge koden, højreklikker du på arkfanen og vælger "Vis programkode". I den tomme rude i højre side indsættes koden. (kopier og indsæt den).
Denne er rettet så kolonne A farves efter hvad der står i kolonne B.

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Range("B1:B95"), Target) Is Nothing Then
Application.ScreenUpdating = False
ActiveSheet.Unprotect
    With Target
    Select Case Target.Value
' Et 1 tal i kolonne B, farver kolonne A rød  i samme række
    Case "1"
        ActiveCell.Offset(-1, -1).Interior.ColorIndex = 3
        ActiveCell.Offset(-1, -1).Font.ColorIndex = 1
' Et 2 tal i kolonne B, farver kolonne A gul  i samme række
    Case "2"
        ActiveCell.Offset(-1, -1).Interior.ColorIndex = 6
        ActiveCell.Offset(-1, -1).Font.ColorIndex = 1
' Et 3 tal i kolonne B, farver kolonne A grøn  i samme række
    Case "3"
        ActiveCell.Offset(-1, -1).Interior.ColorIndex = 4
        ActiveCell.Offset(-1, -1).Font.ColorIndex = 1
' Et 4 tal i kolonne B, farver kolonne A blå  i samme række
    Case "4"
        ActiveCell.Offset(-1, -1).Interior.ColorIndex = 5
        ActiveCell.Offset(-1, -1).Font.ColorIndex = 1
      Case Else
        ActiveCell.Offset(0, -1).Interior.ColorIndex = xlNone
        ActiveCell.Offset(0, -1).Font.ColorIndex = xlAutomatic
    End Select
 
End With
End If
Application.ScreenUpdating = True
'ActiveSheet.Protect DrawingObjects:=False, Contents:=True, Scenarios:=True
End Sub
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
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

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