Avatar billede martin_moth Mester
13. april 2012 - 13:35 Der er 12 kommentarer og
1 løsning

Summer celler på baggrund af deres formatering

Jeg har en masse celler, der er markeret med forskellige farver.

Kan jeg summere f.eks. alle de grønne, alle de blå og alle de gule på en nem måde? Farverne er fordelt helt tilfældigt, og det skulle gerne slå igennem i summen, hvis jeg ændre farven i en celle

Excel 2010 Engelsk
Avatar billede store-morten Ekspert
13. april 2012 - 13:47 #1
Tæl farvede celler eksempler:
http://gupl.dk/677728/
Avatar billede martin_moth Mester
13. april 2012 - 14:08 #2
OK - det var en VBA løsning, hvorfra jeg har fisket

Function SumColor(Cel, ran As Range) As Double
    colo = Cel.Interior.ColorIndex
    colsum = 0
    For Each C In ran.Cells
        If C.Interior.ColorIndex = colo Then
            colsum = colsum + C.Value
        End If
    Next C
SumColor = colsum
End Function

Der er ingen indbyggede Excel funktioner der kan det samme? Ville gerne undgå macro
Avatar billede store-morten Ekspert
13. april 2012 - 14:19 #3
Ikke hvad jeg ved ;-)
Avatar billede martin_moth Mester
13. april 2012 - 14:47 #4
OK. Smid svar.

PS. Er der en måde hvorpå man kan få Excel til at opdatere alle cellerne hvor jeg har sat SumColor funktionen ind? Den opdaterer ikke automatisk, hvis jeg ændrer på farverne - man skal stille sig ind i cellen og trykke Enter
Avatar billede store-morten Ekspert
13. april 2012 - 15:01 #5
Ændring på farverne, opfattes desværre ikke, så der opdateres automatisk, som hvis du ændre et tal :-(
Avatar billede martin_moth Mester
13. april 2012 - 16:10 #6
Kender du en vba kommando der opdaterer alle felter? Så kunne jeg lave en knap jeg kunne trykke på så alt opdateres
Avatar billede store-morten Ekspert
13. april 2012 - 16:55 #7
Hvis formlen er i J6 og formlen er: =SumColor(A1;C1:C9)

Så læg denne på din knap:
Sub Makro1()
Range("J6").FormulaR1C1 = "=SumColor(R[-5]C[-9],R[-5]C[-7]:R[3]C[-7])"
End Sub


Så vil alle opdaterer.

Forklaring som jeg tolker dette:
(R[-5]C[-9],R[-5]C[-7]:R[3]C[-7])

R = Række 6
C = Kolonne 10

Så R[-5]C[-9] er = A1 (5 celler op, 9 celler til venstre i forhold til J6)

og R[-5]C[-7]:R[3]C[-7]) er = C1:C9
Avatar billede store-morten Ekspert
13. april 2012 - 17:15 #8
Så vil alle opdaterer.

Desværre ikke, alle formel, skal med på knappen ;-(
Avatar billede store-morten Ekspert
13. april 2012 - 17:51 #9
Prøv:
Function SumColor(Cel, ran As Range) As Double
    colo = Cel.Interior.ColorIndex
    colsum = 0
    Application.Volatile
    For Each C In ran.Cells
        If C.Interior.ColorIndex = colo Then
            colsum = colsum + C.Value
        End If
    Next C
SumColor = colsum
End Function

Og på knap: (eller tryk F9)
Sub Makro2()
    Calculate
End Sub
Avatar billede martin_moth Mester
13. april 2012 - 19:41 #10
Prøver. Tak
Avatar billede martin_moth Mester
16. april 2012 - 14:36 #11
KATASTROFE - mange forskellige farver har SAMME colorindex - der er masser af farver, der har colorindex 15...
Avatar billede martin_moth Mester
16. april 2012 - 14:47 #12
Katastrofe - mange farver har den SAMME colorindex, selvom farverne er forskellige
Avatar billede store-morten Ekspert
16. april 2012 - 16:03 #13
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