Avatar billede plysbjorn Nybegynder
16. oktober 2006 - 12:45 Der er 7 kommentarer og
1 løsning

Excel 2003: Makro farve på ark

Hej,

Jeg står og mangler en makro som jeg kan bruge til at give et ark (i arkoversigten forneden) en bestemt farve. Eksempelvis grøn eller rød.

Den nuværende fremgangsmåde med "højreklik - arkfarve - vælg rød", er jo til at blive miljøskadet af hvis man skal bruge den jævnligt :)

Nogen der har nogen input?

På forhånd tak.

/plys
Avatar billede kabbak Professor
16. oktober 2006 - 12:56 #1
Avatar billede plysbjorn Nybegynder
16. oktober 2006 - 14:03 #2
Ja, så kan man jo lære at "søge" ordenligt. Fanefarve/Arkfarve... same shit :)

Men jeg kan skitte få det til at fungere. Må lige rode lidt mere med makroen.

/plys
Avatar billede plysbjorn Nybegynder
16. oktober 2006 - 15:13 #3
Nu har jeg bakset en makro sammen som håndterer de 4 farver jeg gerne vil kunne skifte imellem, men jeg kan kun få den til fast at skifte på "Ark1".

Er der nogen der kan hjælpe mig med at få sat en eller anden form for "Selected Sheets" formulering ind?

Pft.
Avatar billede plysbjorn Nybegynder
16. oktober 2006 - 15:13 #4
Makroen ser sådan ud pt:
Sub ChangeColor()

If ActiveWorkbook.Sheets("Ark1").Tab.ColorIndex > 4 Then
ActiveWorkbook.Sheets("Ark1").Tab.ColorIndex = 1
Else: GoTo 1:
End If

1:
If ActiveWorkbook.Sheets("Ark1").Tab.ColorIndex = -4142 Then
ActiveWorkbook.Sheets("Ark1").Tab.ColorIndex = 1
Else: GoTo 2:
End If
GoTo 5:

2:
If ActiveWorkbook.Sheets("Ark1").Tab.ColorIndex = 1 Then
ActiveWorkbook.Sheets("Ark1").Tab.ColorIndex = 3
Else: GoTo 3:
End If
GoTo 5:

3:
If ActiveWorkbook.Sheets("Ark1").Tab.ColorIndex = 3 Then
ActiveWorkbook.Sheets("Ark1").Tab.ColorIndex = 4
Else: GoTo 4:
End If
GoTo 5:

4:
If ActiveWorkbook.Sheets("Ark1").Tab.ColorIndex = 4 Then
ActiveWorkbook.Sheets("Ark1").Tab.ColorIndex = -4142
Else: GoTo 5:
End If

5:
End Sub
Avatar billede kabbak Professor
16. oktober 2006 - 16:59 #5
Sub ChangeColor()

    If ActiveWorkbook.ActiveSheet.Tab.ColorIndex > 4 Then
        ActiveWorkbook.ActiveSheet.Tab.ColorIndex = 1
    Else: GoTo 1:
    End If

1:
    If ActiveWorkbook.ActiveSheet.Tab.ColorIndex = -4142 Then
        ActiveWorkbook.ActiveSheet.Tab.ColorIndex = 1
    Else: GoTo 2:
    End If
    GoTo 5:

2:
    If ActiveWorkbook.ActiveSheet.Tab.ColorIndex = 1 Then
        ActiveWorkbook.ActiveSheet.Tab.ColorIndex = 3
    Else: GoTo 3:
    End If
    GoTo 5:

3:
    If ActiveWorkbook.ActiveSheet.Tab.ColorIndex = 3 Then
        ActiveWorkbook.ActiveSheet.Tab.ColorIndex = 4
    Else: GoTo 4:
    End If
    GoTo 5:

4:
    If ActiveWorkbook.ActiveSheet.Tab.ColorIndex = 4 Then
        ActiveWorkbook.ActiveSheet.Tab.ColorIndex = -4142
    Else: GoTo 5:
    End If

5:
End Sub
Avatar billede plysbjorn Nybegynder
17. oktober 2006 - 08:42 #6
Trylle Trylle kabbak... det er lige som det skal være.

Det fede ved makroer er at man bliver klogere for hver gang man roder med det. Skal lige have luret lidt om makroen behøver være så omfangsrig/fyldt med if-formler, men det må blive en anden gang :)

Hvis du smider et svar vil jeg være glad :)
Avatar billede kabbak Professor
17. oktober 2006 - 08:43 #7
et svar ;-))
Avatar billede kabbak Professor
17. oktober 2006 - 09:02 #8
tak for point
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