Ayuda con Macro en Excel, que busque datos repetidos e inserte una fila y siga buscando..

A lo mejor no puede hacerse lo que necesito pero en fin ahi voy.

Tengo una hoja de calculo ordenada por digamos numero de seguridad social. En algunos casos los registros se repiten, (estoy hablando de mas de 9500 registros, por lo que manualmente seria muy complicado hacerlo), necesito crear una macro, que busque en la columna de números de seg. Social, y al encontrar un registro repetido (los que se repiten unicamente se repiten dos veces), inserte una fila antes del primer registro repetido, y luego continue buscando hacia abajo haciendo esto hasta llegar a la ultima fila con datos..

No se si es mucho lo que pido o incluso si es posible hacerlo ja ja ja.. En fin.

Ojala alguien pueda ayudarme con esto.

Respuesta

Stay ahead in the ever-evolving world of networking with the latest Cisco 200-301 New Questions update certification exam update for 2023. Our comprehensive and up-to-date question bank ensures you're prepared to tackle the most current networking challenges and opportunities. Whether you're a seasoned professional or just starting your networking journey, this update guarantees that you're equipped with the latest knowledge and skills needed to excel in your career.

Key Highlights:

  1. Updated Content: Our team of experts has meticulously curated new questions and scenarios, aligning with the most recent industry trends and Cisco's latest network technologies.

  2. Real-world Scenarios: Practice with real-world situations and challenges, ensuring you can confidently apply your knowledge in the field.

  3. Exam-Ready: Gain the confidence to ace the Cisco 200-301 exam on your first attempt with our carefully crafted question bank.

1 respuesta más de otro experto

Respuesta
1

Te mando mi solución y estas son las instrucciones:

-Posiciónate en la primera celda de los números de la seg. Soc. Y después ejecuta esta macro:

Sub ejemplo()
'por luismondelo
Do While ActiveCell.Value <> ""
valor = ActiveCell.Value
contarsi = Application.WorksheetFunction.CountIf(Columns(1), valor)
If contarsi > 1 Then
ActiveCell.Offset(1, 0).Select
ActiveCell.EntireRow.Insert
ActiveCell.Offset(1, 0).Select
Do While ActiveCell.Value = valor
ActiveCell.Offset(1, 0).Select
Loop
Else
ActiveCell.Offset(1, 0).Select
End If
Loop
End Sub

recuerda finalizar la consulta

Hola Luis.. estoy analizando la solución que me aportas tan amablemente... pero al correr la macro me marca el sig. error:

Error de Compilacion:

End If sin bloque If

no se que es lo que sucede...

te agradezco de antemano el tiempo que estas invirtiendo en apoyarme..

saludos cordiales y gracias de antemano

Sergio

Al capturar el código cometí un error.. por eso me marcaba error. Ya lo corregí.. y no marca error.. y funciona perfectamente , sulamente supongo que el error ha sido mio al expresarme.. la macro recorre por completo la columna e identifica los valores repetidos.. pero inserta la fila entre esos dos valores repetidos.. y lo que necesito es mas bien que inserte una fila antes de los dos valores que se repiten y no entre ellos..

Me apena bastante ser tan quisquilloso.. pero te agradeceré enormemente si puedes apoyarme en este sentido.. yo mismo buscare la manera (usando lógica en el código) pero siendo honestos.. mis conocimientos en esto son bastante burdos..

De antemano muchas gracias Luis

Saludos Sergio ..

Jajaja.. noooo!! estaba en un error, funciona excelente!!!

te agradezco tu apoyo.. !!

muchas gracias Luis

Saludos desde Mexico

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas