Avatar billede bgjensen Nybegynder
24. juli 2002 - 14:29 Der er 22 kommentarer og
2 løsninger

Problemer med farvning ag rækker

Jeg bruger følgende makro (fundet her på eksperten :o) ) til at farve rækkerne i mine regneark:

Sub farve()
    For Række = 2 To 100 Step 2
        Rows(Række & ":" & Række).Select
        With Selection.Interior
            .ColorIndex = 15
            .Pattern = xlSolid
        End With
    Next Række

    For Række = 1 To 99 Step 2
        Rows(Række & ":" & Række).Select
        With Selection.Interior
            .ColorIndex = 48
            .Pattern = xlSolid
        End With
    Next Række

End Sub

Jeg vil gerne have at der skal være en lille "border" som der er normalt, når man ikke har farvet cellerne. Kan man det? Hvordan?

Og når jeg tilføjer en ny række og kører makroen igen, så bliver de 2 nederste linier samme farve, hvordan slipper jeg for det? Kan man på en eller anden måde ligesom når jeg farver dem, så sætte den til "No fill"
24. juli 2002 - 14:53 #1
Jeg kommer med et godt bud om lidt.
24. juli 2002 - 15:04 #2
Prøv det her :-)

Public Sub Color()
    Dim lCount As Long
    Dim rRow As Range

    For Each rRow In ActiveSheet.Rows("1:100")
        If Not (rRow.Row Mod 2 = 0) Then
            DoTheColorJob rRow, 15
        Else
            DoTheColorJob rRow, 48
        End If
    Next rRow

    Set rRow = Nothing
End Sub

Public Sub DoTheColorJob(ByRef rRow As Range, ByRef iColor As Integer)
    With rRow
        With .Interior
            .ColorIndex = iColor
            .Pattern = xlSolid
        End With
        With .Borders(xlEdgeLeft)
            .LineStyle = xlContinuous
            .Weight = xlThin
            .ColorIndex = xlAutomatic
        End With
        With .Borders(xlEdgeTop)
            .LineStyle = xlContinuous
            .Weight = xlThin
            .ColorIndex = xlAutomatic
        End With
        With .Borders(xlEdgeBottom)
            .LineStyle = xlContinuous
            .Weight = xlThin
            .ColorIndex = xlAutomatic
        End With
        With .Borders(xlEdgeRight)
            .LineStyle = xlContinuous
            .Weight = xlThin
            .ColorIndex = xlAutomatic
        End With
        With .Borders(xlInsideVertical)
            .LineStyle = xlContinuous
            .Weight = xlThin
            .ColorIndex = xlAutomatic
        End With
    End With
End Sub
Avatar billede bgjensen Nybegynder
24. juli 2002 - 15:17 #3
Farver, og "border" perfekt. Men der er stadigvæk det problem at når jeg tilføjer en ny række og kører makroen igen, så bliver de 2 nederste linier samme farve, hvordan slipper jeg for det?
24. juli 2002 - 15:21 #4
Det kan have noget at gøre med, at du nu har 101 linie, og makro kun håndterer 100 linier  (  ActiveSheet.Rows("1:100")  )
Hvis du f.eks. har noget i alle celler i kolonne A, så kan du skifte ActiveSheet.Rows("1:100") ud med ActiveSheet.Range("A1").CurrentRegion.Rows
Avatar billede Slettet bruger
24. juli 2002 - 15:23 #5
Du kunne indsætte følgende linier i starten af
Sub Color()

----------
Cells.Select
Selection.Interior.ColorIndex = xlNone
----------

Makroen vil så "viske tavlen ren" inden den farvelægger igen.
Avatar billede bgjensen Nybegynder
24. juli 2002 - 15:31 #6
flemmingdahl -> hvis nu man tilføjer en linie på f.eks linie 61 så får den samme farve som linie 60, så derfor kører man makroen igen, men så vil linie 100 og 101 have samme farve, så linie 101 skal være hvid (ikke farven hvid, men ingen farve (no fill))
Avatar billede bgjensen Nybegynder
24. juli 2002 - 17:04 #7
Ville det være muligt at lave den så det kun er et makeret område at den farver og laver borders i?? Så man selv bestemmer hvilke områder??
Jeg sætter point op til 100 hvis der kommer en løsning til det!
Avatar billede johs_j Novice
24. juli 2002 - 21:36 #8
x.Font.ColorIndex = 0
            x.Interior.ColorIndex = 0

Disse to liner sætter textfarve og cellefarve som normalt når du åbner et nyt ark.
Avatar billede Slettet bruger
24. juli 2002 - 22:08 #9
Jeg har lavet et Excel tilføjelsesprogram for et stykke tid siden  der farvelægger rækker. Man vælger startrække, slutrække, farve og mellemrum. Du må gerne se om du kan bruge den til noget. Jeg skal bare vide om du bruger dansk eller engelsk Excel.
Avatar billede bgjensen Nybegynder
24. juli 2002 - 23:17 #10
blackadder -> jeg bruger engeæsk excel.
Avatar billede bgjensen Nybegynder
24. juli 2002 - 23:18 #11
engeæsk = engelsk
Avatar billede Slettet bruger
24. juli 2002 - 23:26 #12
Hvad er din e-mail adresse ?
Avatar billede bgjensen Nybegynder
25. juli 2002 - 00:05 #13
bgj@bgjensen.dk
Avatar billede Slettet bruger
25. juli 2002 - 00:12 #14
sendt
Avatar billede bgjensen Nybegynder
25. juli 2002 - 00:28 #15
jeg har installeret den, men hvordan bruger jeg den?
Avatar billede Slettet bruger
25. juli 2002 - 00:30 #16
Hvis den er installeret korrekt burde den ligge under 'Tools' menuen.
Avatar billede bgjensen Nybegynder
25. juli 2002 - 00:30 #17
Never mind, jeg har fundet ud af det!
Avatar billede bgjensen Nybegynder
25. juli 2002 - 00:35 #18
Men du må gerne ændre den så den også laver borders i de ønskede rækker (hvis det ikke er for svært)
Avatar billede bgjensen Nybegynder
25. juli 2002 - 00:36 #19
Kan den ikke også ændres til andre farver jeg vil gerne bruge den grå som er der nu og så en grå som er lidt mørkere (farverne 15 og 48)
Avatar billede Slettet bruger
25. juli 2002 - 00:43 #20
Jeg kigger på det :-)
Avatar billede bgjensen Nybegynder
25. juli 2002 - 00:54 #21
Takker
Avatar billede Slettet bruger
25. juli 2002 - 02:00 #22
Ny version sendt.
Avatar billede bgjensen Nybegynder
25. juli 2002 - 10:07 #23
blackadder -> kan du ikke lige lave et svar, så du kan få nogle point, for din udmærkede add-in!
Avatar billede Slettet bruger
25. juli 2002 - 10:14 #24
OK
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