Buenas tardes
Tengo la siguiente macro que la hice con la grabadora
Sub condindagts() 'Selection.FormatConditions(1).StopIfTrue = False Range("A2:A30").Select Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _ "=ESBLANCO($I2)" Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority With Selection.FormatConditions(1).Interior .PatternColorIndex = xlAutomatic .Color = 5263615 .TintAndShade = 0 End With Selection.FormatConditions(1).StopIfTrue = False Range("A1").Select End Sud
Lo que hace es colorear de rojo en el rango de a1: a30 si la celda de la columna I esta vacía, solo que yo ingreso datos en la columna A o sea va incrementando a mas de a30 , lo que necesito es no tener que cambiar cada vez el rango de la condición, si no tal vez actualizar y que automáticamente incremente el rango hasta la ultima celda con dato de la columna A.
Muchas gracias por su atención
Saludos
Jesús
Adjunto | Tamaño |
---|---|
![]() | 79.46 KB |
¿Y por qué no utilizas el formato condicional?
Justamente hice eso Cron, pero no ejecuta cuando ingreso nuevos datos.
Jesus Martinez Plantarosa
Cuando tengo ese problema, lo que suelo hacer es aplicar el formato condicional a la columna entera. De todas maneras, en el rango aplicado normalmente se selecciona un rango fijado (con el símbolo $ en letra y número). Puedes eliminar el $ donde te interese y arrastrar las propiedades para extender el formato condicional.
En caso de tener una fila de totales (es decir, si los datos los introduces insertando filas nuevas antes de esa fila de totales), lo que suelo hacer es extender el formato condicional hasta la última fila antes de la fila de totales. Siempre dejo una fila en blanco, de manera que inserto filas ANTES del final del formato condicional. De esta manera, la fila insertada mantiene el formato condicional.
Un saludo
Muchas gracias por la idea
Jesus Martinez Plantarosa