Avatar billede djaper Praktikant
27. januar 2011 - 20:31 Der er 6 kommentarer og
1 løsning

Ikonsæt i betinget formatering - Relative referancer

Hej Igen

Har tidliger skrevet en tråd men fik aldrig løst problemet, så nu prøver jeg igen.

Jeg har til privaten lavet et budget og et regnskabsskema i sammen excel ark.

Mit problem er, at når jeg har oprettet en regel i en celle så kan jeg ikke kopier det til resten af arket. Den skriver at man ikke kan lave relative referencer i betinget formatering.

Jeg ønsker bruge et ikonsæt til at vise om cellens værdi er blevet større eller mindre end budgetteret. eksempel:

Celle B4 er formateret som følgende:
rød pil: når værdien i cellen er > $B$72
gul pil: når værdien i cellen er = $B$72
grøn pil: når værdien i cellen er < $B$72

Denne formatering ønsker jeg at kopier til dele af arket med formatpenslen. Men det kan Excel ikke. For celle C4 skal den sammenligne med celle C72, men den låser sig fast til celle B4 og B72.

Her er et eksempel på hvilke celler der skal samlignes

(B4 samlignes med B72) (C4 med C72) (D4 med D72).....(M4 med M72)
(B5 samlignes med B73) (C5 med C73) (D5 med D73).....(M5 med M73)
etc.
etc.
etc.
etc.
(B58 samlignes med B127) (C58 med C127) (D58 med D127).....(M58 med M127)

Er der nogen der kender en smutvej, en makro eller er der kun den hårde måde og oprette en regel for hver eneste celle?

Ville gerne give 1500 point men maks er desværre 200

Jesper
Avatar billede jens48 Ekspert
27. januar 2011 - 21:21 #1
Så vidt jeg kan se skal du blot fjerne dollar tegnene i den betingende formattering. Altså:
rød pil: når værdien i cellen er > B72
gul pil: når værdien i cellen er = B72
grøn pil: når værdien i cellen er < B72
Avatar billede djaper Praktikant
27. januar 2011 - 21:36 #2
Det er det der er problemet - det kan man ikke:-)
Avatar billede anlu Nybegynder
27. januar 2011 - 21:44 #3
Løser denne makro dit problem?

Bemærk du lige skal rette "Sheet1" til hvad dit ark nu hedder.
Og jeg har antaget at det er en fejl at du skriver at række 58 skal sammenlignes med 127 - det bør umiddelbart være 126 (så der er 68 rækker i mellem rækken med formatteringen og den række der sammenlignes med).

Public Sub SetIconSet()
    Dim cfIconSet As IconSetCondition
    Dim rn As Range
   
    Dim startRow As Integer
    Dim startCol As Integer
    Dim endRow As Integer
    Dim endCol As Integer
   
    Dim row As Integer
    Dim col As Integer
   
    Dim compareRowoffset As Integer
    Dim compareRef As String
   
    startRow = 4
    endRow = 58
    startCol = 2 ' B
    endCol = 13 ' M
   
    compareRowoffset = 68
   
    For row = startRow To endRow
        For col = startCol To endCol
            Set rn = Worksheets("Sheet1").Cells(row, col)
            compareRef = "=" & rn.Offset(compareRowoffset, 0).Address
           
            rn.FormatConditions.Delete
           
            Set cfIconSet = rn.FormatConditions.AddIconSetCondition
            cfIconSet.IconSet = ActiveWorkbook.IconSets(xl3Arrows)
            cfIconSet.ReverseOrder = True
            With cfIconSet.IconCriteria(3)
                .Type = xlConditionValueNumber
                .Value = compareRef
                .Operator = xlGreater
            End With
           
            With cfIconSet.IconCriteria(2)
                .Type = xlConditionValueNumber
                .Value = compareRef
                .Operator = xlGreaterEqual
            End With
       
        Next col
    Next row

End Sub
Avatar billede kabbak Professor
27. januar 2011 - 22:08 #4
Fjern $ foran B

Sådan:

rød pil: når værdien i cellen er > B$72
gul pil: når værdien i cellen er = B$72
grøn pil: når værdien i cellen er < B$72
Avatar billede duxz Nybegynder
27. januar 2011 - 22:43 #5
Jeg mener nu godt at du kan bruge Jens48s løsning. Du skal bare lave den formatering i den første celle, og så kopiere den ud....det har jeg prøvet, og det virkede i excel 2003 anyway.
Avatar billede djaper Praktikant
05. februar 2011 - 20:56 #6
til anlu

Super det virker jo - hvordan giver jeg dig point?

Takker mange gange

Jesper
Avatar billede anlu Nybegynder
06. februar 2011 - 15:27 #7
Glad for at kunne hjælpe :o)
Du giver point, ved at acceptere dette svar.
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