Olorear el fondo de un rango de celdas el valor de una
Buenas tardes lo que quiero es dar color de fondo a un rango de celdas por ejemplo a1 a h1, en función del valor V, C, o DE de la celda C1, esto se repite en todas las filas, por ejemplo si C1 es V el rango A1:H1 cambia su fondo a rojo, Si C2=C A:2:H2 cambia su fondo a amarillo etc
1 respuesta
Respuesta de Enrique Bernal
1
1
Enrique Bernal, Has tus preguntas de forma clara, cuando veas que un tema es muy...
Coloca esta macro en la hoja donde vayas a modificar los valores, funciona cuando activas la celda en C Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Not Application.Intersect(ActiveCell, Range("C:C")) Is Nothing Then a = ActiveCell.Row If Range("C" & a).Value = "V" Then Cells(a, 1).Interior.ColorIndex = 3 Cells(a, 2).Interior.ColorIndex = 3 Cells(a, 3).Interior.ColorIndex = 3 Cells(a, 4).Interior.ColorIndex = 3 Cells(a, 5).Interior.ColorIndex = 3 Cells(a, 6).Interior.ColorIndex = 3 Cells(a, 7).Interior.ColorIndex = 3 Cells(a, 8).Interior.ColorIndex = 3 Else If Range("C" & a).Value = "C" Then Cells(a, 1).Interior.ColorIndex = 6 Cells(a, 2).Interior.ColorIndex = 6 Cells(a, 3).Interior.ColorIndex = 6 Cells(a, 4).Interior.ColorIndex = 6 Cells(a, 5).Interior.ColorIndex = 6 Cells(a, 6).Interior.ColorIndex = 6 Cells(a, 7).Interior.ColorIndex = 6 Cells(a, 8).Interior.ColorIndex = 6 Else If Range("C" & a).Value = "D" Then Cells(a, 1).Interior.ColorIndex = 4 Cells(a, 2).Interior.ColorIndex = 4 Cells(a, 3).Interior.ColorIndex = 4 Cells(a, 4).Interior.ColorIndex = 4 Cells(a, 5).Interior.ColorIndex = 4 Cells(a, 6).Interior.ColorIndex = 4 Cells(a, 7).Interior.ColorIndex = 4 Cells(a, 8).Interior.ColorIndex = 4 End If End If End If End If End Sub
Algo debo de estar haciendo mal, pongo la macro en un modulo de VBA, pero no funciona, cuando cambio el valor de la celda C no se produce ningún cambio
No debes colocar la macro en un modulo, si no en el vba de la hoja en la que quieres que cada vez que realices el cambio se corra la macro, por ejemplo si en la hoja 1 quieres que se haga corra esta macro debes abrir visual y dar doble click en el nopmbre de la hoja que te aparece, no en los módulos, y en la hoja pegar la amcro, y listo.