Avatar billede michhans Nybegynder
21. april 2007 - 13:59 Der er 3 kommentarer

farve udvalgte celler i excel

Hej

Jeg søger en kode der kan finde celler med teksten lørdag eller søndag. Ugedagene står i en række efter hindanden for en hel måned. Herefter skal den give selve cellen og cellen op over og den nedenunder baggrundsfarven rød.

På forhånd tak
Avatar billede karl-ove Nybegynder
21. april 2007 - 14:30 #1
Du skal anvende menupunkt Formater, Betinget formattering.

Hvis ugedag-navne f.eks står i række 9, så vælg betinget formmattering i celle a9:

Indsæt betingelse 1: Formlen er  =a$9="lørdag"  (husk at fjerne $ foran kollonne)
    og betingelse 2: Formlen er  =a$9="søndag"
og vælg formmattering, i dette tilfælde farve (faneblad mønster) for hver af de 2 betingelser.

Brug formatteringspensel til at kopiere formatteringen til alle celler
Avatar billede michhans Nybegynder
21. april 2007 - 22:25 #2
Det virkede sådan set godt nok når jeg gjorde det direkte i excel. Men da jeg optog en makro af det og ville bruge det i vb - ja så kiksede det en smule. Her er koden den lavede:

Application.CutCopyMode = False
    Selection.FormatConditions.Delete
    Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _
        "=C$8=""lørdag"""
    Selection.FormatConditions(1).Interior.ColorIndex = 3
    Selection.Copy
    Range("D8:AG8").Select
    Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
        SkipBlanks:=False, Transpose:=False
    Application.CutCopyMode = False
   

Jeg valgte kun at få markeret lørdage til at starte med. Problemet er nu at den kun markerer søndage og farver dem røde?? Det er på sin vis meget godt, men jeg tvivler på at den farver lørdage røde når jeg beder den om at farve søndage røde.
Avatar billede excelent Ekspert
27. april 2007 - 22:09 #3
marker liste, kør sub (finder lørdag farver denne og før/efter)

Sub Kulør()
For Each c In Selection
If c = "lørdag" Or Format(c, "dddd") = "lørdag" Then
c.Offset(-1, 0).Interior.ColorIndex = 3 ' selle før
c.Interior.ColorIndex = 3 ' selle med lørdag
c.Offset(1, 0).Interior.ColorIndex = 3 ' selle efter
End If
Next
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
Kurser inden for grundlæggende programmering

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