Coloreado automático en Excel

Hola, buenos días
Tengo problemas para desarrollar una macro en un documento de Excel. Mi idea es la siguiente:
Tengo un cuadro como el siguiente:
B I J K L M
11   001   20/07/2008   15/09/2008   03/10/2008   17/12/2008   04/03/2009
12   002   14/03/2009   27/06/2009   20/09/2009   14/11/2009   16/05/2010
13   003   01/05/2007   14/08/2007   24/10/2007   31/12/2007   24/04/2008
14   004   07/10/2008   14/12/2008   09/03/2009   14/05/2009   26/09/2009
15   005   13/12/2007   24/04/2008   17/06/2008   30/09/2008   30/12/2008
Las fechas las iré marcando en negrita según se vayan cumpliendo. Sobre ello, lo que necesito es una macro que me lea la matriz I11:M100, detecte en qué celda de cada fila está la última fecha marcada en negrita, y dependiendo de la columna en que se encuentre dicha celda me coloree las celdas de la columna B de un color determinado.
Supongamos que a las columnas les corresponde el siguiente código de colores: I=color1    J=color2   K=color3   L=color4   M=color5
Como ejemplo, en la fila 12, la última celda marcada en negrita es la L12. Por ello, la macro debería colorear la celda B12 del color correspondiente a la columna L (el color4)
Muchas gracias y perdón por escribir tanto

1 respuesta

Respuesta
1
Te dejo una rutina para colocar en el Editor, en un módulo. Luego le podes asignar un botón, atajo de teclado o ejecutarla desde el menú Herramientas, macros.
Ajustá el nro de color que quieras. Podes encontrar la lista desde la Ayuda, buscando el tema ColorIndex
Sub MacroColor()
'
' Macro desarrollada por Elsamatilde el 8/01/09
'
For Each celdita In Range("I11:M100")
If celdita.Font.Bold = True Then
fila = celdita.Row
col = celdita.Column
If col = 9 Then colorin = 1
If col = 10 Then colorin = 2
If col = 11 Then colorin = 3
If col = 12 Then colorin = 4
If col = 13 Then colorin = 5
Cells(fila, 2).Interior.ColorIndex = colorin
End If
Next celdita

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas