Excel - Alternar color de fila cuando cambia de valor de las celdas

 
Vista:
sin imagen de perfil

Alternar color de fila cuando cambia de valor de las celdas

Publicado por aritz (5 intervenciones) el 03/04/2024 14:00:19
Duda-excel

Muy buenas.
Quería saber si hay alguna forma de crear una macro de forma que cuando se copie la tabla de tareas realizadas por los operarios, las filas salgan de un color para un operario y cuando aparezca el siguiente operario se cambie de color, en el siguiente operario vuelva a cambiar al color inicial y así sucesivamente. Dejo una foto con el resultado que querría lograr.
Gracias de antemano.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Antoni Masana
Val: 4.908
Oro
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Alternar color de fila cuando cambia de valor de las celdas

Publicado por Antoni Masana (2499 intervenciones) el 03/04/2024 21:50:10
Esta es la macro para lo que quieres.
En la macro la primera fila a colorear es la 2.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
Option Explicit
 
Sub Poner_Colores()
    Dim Colores As Boolean, Fila As Integer
 
    Colores = True
    Fila = 2
 
    While Cells(Fila, "A") <> Empty
        If Cells(Fila, "A") <> Cells(Fila - 1, "A") Then Colores = Not Colores
        If Colores Then
            Cells(Fila, "A").Select: Call Color_1
            Cells(Fila, "B").Select: Call Color_1
        Else
            Cells(Fila, "A").Select: Call Color_2
            Cells(Fila, "B").Select: Call Color_2
        End If
        Fila = Fila + 1: DoEvents
    Wend
End Sub
 
Private Sub Color_1()
    With Selection.Interior
        .Pattern = xlSolid
        .PatternColorIndex = xlAutomatic
        .ThemeColor = xlThemeColorAccent5
        .TintAndShade = 0.399975585192419
        .PatternTintAndShade = 0
    End With
End Sub
 
Private Sub Color_2()
    With Selection.Interior
        .Pattern = xlSolid
        .PatternColorIndex = xlAutomatic
        .ThemeColor = xlThemeColorAccent6
        .TintAndShade = 0.399975585192419
        .PatternTintAndShade = 0
    End With
End Sub

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Alternar color de fila cuando cambia de valor de las celdas

Publicado por Aritz (5 intervenciones) el 04/04/2024 08:53:41
Muchas gracias!! Funciona perfecto.
Lo único un par de cosas,
¿Cómo podría hacer para aplicarlos a mas columnas, no solo a las dos primeras?
¿Cómo podría hacer para cambiar los colores a otros?
Gracias de nuevo y saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Alternar color de fila cuando cambia de valor de las celdas

Publicado por Aritz (5 intervenciones) el 04/04/2024 10:43:52
Vale el tema de aplicarlo a todas las columnas de la tabla ya lo he solucionado.
Con lo que me estoy volviendo loco es en como aplicar los colores a mi gusto, me gustaría poder aplicar colores con el formato RGB pero no se como implementarlo.
Gracias de antemano.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Antoni Masana
Val: 4.908
Oro
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Alternar color de fila cuando cambia de valor de las celdas

Publicado por Antoni Masana (2499 intervenciones) el 04/04/2024 11:33:48
Para cambiar el color es seguir los siguientes pasos:

- Seleccionas una celda.
- Grabar MACRO
- Seleccionar el color.
- Parar grabación MACRO.

Y ya tienes el código para el nuevo color.

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Alternar color de fila cuando cambia de valor de las celdas

Publicado por Aritz (5 intervenciones) el 04/04/2024 12:06:42
Hola de nuevo.

-Yo a lo que me refería era a cambiar el color dentro del código que me mandaste ayer (copio el código):

Private Sub Color_1()
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.ThemeColor = xlThemeColorAccent5
.TintAndShade = 0.399975585192419
.PatternTintAndShade = 0
End With
End Sub

Lo que quiero es cambiar ese color (Color_1) y ponerlo en una combinación RGB a mi gusto.

Gracias otra vez por tu atención.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Antoni Masana
Val: 4.908
Oro
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Alternar color de fila cuando cambia de valor de las celdas

Publicado por Antoni Masana (2499 intervenciones) el 04/04/2024 14:06:57
Parece que no me he explicado bien.

Para cambiar el color es seguir los siguientes pasos:

- Seleccionas una celda.
- Grabar MACRO (El nombre por defecto es macro1 pero puedes llamarlo como quieras)
- Seleccionar el color.

en esta ventana:



Color-1

O en esta otra:



Color-2

- Parar grabación MACRO.

Esto genera un código que debes usar para modificar la macro.


Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Alternar color de fila cuando cambia de valor de las celdas

Publicado por Aritz (5 intervenciones) el 04/04/2024 14:07:35
Buenas de nuevo.
Ya he descubierto como se hace. Dejo por aquí el código por si alguien le interesa.

Private Sub Color_1()
With Selection.Interior
.Pattern = xlSolid
.PatternColor = 6817838
.Color = VBA.RGB(43, 200, 190)
.TintAndShade = 0
.PatternTintAndShade = 0
End With
End Sub

Gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Antoni Masana
Val: 4.908
Oro
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Alternar color de fila cuando cambia de valor de las celdas

Publicado por Antoni Masana (2499 intervenciones) el 04/04/2024 17:43:53
Esta es tu macro:

1
2
3
4
5
6
7
8
9
Sub Color_RGB()
    With Selection.Interior
        .Pattern = xlSolid
        .PatternColor = 6817838
        .Color = VBA.RGB(43, 200, 190)
        .TintAndShade = 0
        .PatternTintAndShade = 0
    End With
End Sub

Y esta es la macro creara con GRABAR MACRO e ir a:

Color-3

Crea este código que hace exactamente lo mismo que el anterior pero escrito de otra forma:

1
2
3
4
5
6
7
8
9
Sub Color_RGB_2()
    With Selection.Interior
        .Pattern = xlSolid
        .PatternColorIndex = xlAutomatic
        .Color = 12503083
        .TintAndShade = 0
        .PatternTintAndShade = 0
    End With
End Sub

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar