Avatar billede jry Nybegynder
22. november 2007 - 11:23 Der er 12 kommentarer

Makro der farver en celle hvis en given betingelse er opfyldt

Jeg har brug for at lave en makro der kigger ned i en kollone og giver en farve til cellen hvis en given betingelse er opfyldt. F.eks skal en celle fra kollone A farves rød hvis den er lig PPP.

PÅ forhånd tak for hjælpen
Avatar billede panebb Novice
22. november 2007 - 11:26 #1
Du kan lave en betinget formatering, som klarer din opgave.
Avatar billede luffeladefoged Praktikant
22. november 2007 - 11:27 #2
Kan du ikke bruge - menu - format - conditional formatting. Men der er måske for få farve kombinationer?
Hilsen Luffe
Avatar billede luffeladefoged Praktikant
22. november 2007 - 11:28 #3
Condition:
Cell Value - equal to - ppp
Avatar billede jry Nybegynder
22. november 2007 - 13:00 #4
Problemet med betinget formatering er at man kun kan benytte 3 betingelser. Jeg skal bruge op til 7 betingelser
Avatar billede supertekst Ekspert
22. november 2007 - 13:06 #5
Er det kun celler i kolonne A, der skal "farveformateres" - eller..
I modsat fald, hvad er spillereglerne så?
Avatar billede jry Nybegynder
22. november 2007 - 13:36 #6
Det er celler i kolonne F til AI
Avatar billede supertekst Ekspert
22. november 2007 - 13:58 #7
Jeg mangler stadig betingelserne - altså
Hvis indholdet i cellerne F - AI har værdien
PPP - så skal farven være x
QQQ - - " -
osv.
Avatar billede jry Nybegynder
22. november 2007 - 14:06 #8
Hvis indeholldet i cellerne F til AI har værdierne, PG13, PG14, MG90, BG50, 0550, 0549 skal de bare have en eller anden random farve. F.eks collorIndex 30-36. Tak
Avatar billede jry Nybegynder
22. november 2007 - 14:08 #9
Altså PG13 skal have collorindex 30, PG14 collorindex 31 osv
Avatar billede supertekst Ekspert
22. november 2007 - 15:22 #10
Rem Koden indsættes i det pågældende ark
Rem Igangsættes p.t. evt ved: Alt+F8 - Farvelægning - Afspil
Rem ========================================================
Dim koder As Variant
Public Sub FarveLægning()
    koder = Array("PG13", "PG14", "MG90", "BG50", "550", "549") 'foranstillet nul Fjernet foran tal-værdier

    ar = ActiveCell.Cells(xlLastCell).Row
   
    Set r = Range("F1:AI" + CStr(ar))
    For Each cc In r.Cells
            værdi = CStr(cc)
            If værdi <> "" Then
                farvekode = erDetFarveKode(værdi)
                If farvekode > 0 Then
                    cc.Interior.ColorIndex = farvekode
                End If
            End If
    Next
    MsgBox ("Farvesætning er afsluttet")
End Sub
Private Function erDetFarveKode(v)
    For f = 0 To UBound(koder)
        If UCase(v) = koder(f) Then
            erDetFarveKode = f + 30
            Exit Function
        End If
    Next f
    erDetFarveKode = 0
End Function
Avatar billede supertekst Ekspert
29. november 2007 - 11:47 #11
Nogen afklaring?
Avatar billede supertekst Ekspert
10. januar 2008 - 13:22 #12
lukketid???
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