Necesito tu ayuda con formato condicional

hice una macro para reconocer los datos repetitivos con esta formula:

=CONTAR.SI($D:$D;$D2)>1 ------------- de -----------($A$2:$AJ$10000) que se

"sombreara de color amarillo"

mi problema consiste que sigue reconociendo el duplicado cuando no es idéntico

ejemplo: 1) dato en la celda A2 (1242858)

2) dato en la celda A100 (124285)

estos dos datos se me están sombreando si bien es cierto son datos iguales pero uno de ellos tiene un dígito mas...como podría remediar, este error ya q necesito q se sombree siempre en cuando tenga la misma cantidad de dígitos y a su vez los datos iguales.

gracias de antemano

edinson

1 Respuesta

Respuesta
1

Perdona, en el título de tu pregunta hablas de formato condicional y luego hablas de macro, no se muy bien lo que quieres pero si quieres marcar los duplicados con formato condicional ya existen reglas dentro del menú de formato condicional que lo hacen.

Si quieres una macro puedes hacerlo con esta:

Con esta macro te pintará de rojo los valores duplicados de la columna A

Sub ejemplo()
Range("a1").Select
Do While ActiveCell.Value <> ""
contarsi = Application.WorksheetFunction.CountIf(Columns(1), ActiveCell)
If contarsi > 1 Then ActiveCell.Interior.ColorIndex = 3
ActiveCell.Offset(1, 0).Select
Loop
End Sub

no olvides finalizar la consulta

hola y gracias por tu ayuda..luis..

pero tengo un problema con el modulo q me indicaste...bueno lo he creado pero necesito que me coloree toda la fila EL VALOR A BUSCAR ESTA en la fila D y ya no en la A

ejemplo

si el valor D20 es = 123

y el valor de D60 es = 123

que se coloreen las dos filas D20 hasta ap20 y D60 hasta ap60

para mi es necesario hacerlo con una macros..pensé que seria posible el formato condicional en una macros pero se me cuelga..y ocupa mucha memoria ram

me pudieses sugerir otra forma...

gracias de antemano

Prueba a ejecutar esta macro:

Sub ejemplo()
Range("d1").Select
Do While ActiveCell.Value <> ""
contarsi = Application.WorksheetFunction.CountIf(Columns(1), ActiveCell)
If contarsi > 1 Then
range(ActiveCell,activecell.offset(0,38)).Interior.ColorIndex = 3
ActiveCell.Offset(1, 0).Select
Loop
End Sub

ya me cuentas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas