Excel - Ayuda con Eliminar Filas con criterios

 
Vista:
sin imagen de perfil
Val: 11
Ha aumentado su posición en 5 puestos en Excel (en relación al último mes)
Gráfica de Excel

Ayuda con Eliminar Filas con criterios

Publicado por Camilo (3 intervenciones) el 25/05/2021 02:31:16
Saludos, mi nombre es Camilo Más y necesito por favor me ayuden con una situación que tengo para eliminar filas de una hoja de Excel. Tengo un libro con varias hojas, necesito que si una celda en la columna id_hogar de la hoja 1 no coincide con el numero de celda de id_hogar de la hoja 2 elimine la fila de la hoja1.

Hoja1
Hoja2
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de David
Val: 211
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Ayuda con Eliminar Filas con criterios

Publicado por David (11 intervenciones) el 25/05/2021 02:48:10
Hola, no entendi muy bien. Quieres ver si existe un ID de la hoja 1 en la hoja 2, y si no existe, eliminar esa fila de la hoja 1, eso?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 11
Ha aumentado su posición en 5 puestos en Excel (en relación al último mes)
Gráfica de Excel

Ayuda con Eliminar Filas con criterios

Publicado por Camilo (3 intervenciones) el 25/05/2021 03:22:28
Holla, si exactamente, gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de David
Val: 211
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Ayuda con Eliminar Filas con criterios

Publicado por David (40 intervenciones) el 25/05/2021 17:15:38
Hice un código, no sé si sabes usar macros de excel. de todas maneras adjunto archivo para que descomprimas a tu equipo.
Este código compara entre hoja 1 y 2 sus columnas E.

Al abrirlo debes permitir edicion (aparecerá una barra amarilla en la parte superior).

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Sub eliminaFila()
 
    '@dj.vivanco // 25-05-2021
 
    Dim dict As Object, celda As Range, ID As String
    Set dict = CreateObject("Scripting.Dictionary")
 
    'lleno el diccionario con datos de columna E de la hoja 2------
    For Each celda In Hoja2.Range("E2:E" & Hoja2.Range("E" & Rows.Count).End(xlUp).Row)
        ID = celda.Value
        If Not dict.Exists(celda.Value) Then dict.Add ID, ID
    Next celda
 
    'recorro cada id de la hoja 1, comparo y borro lineas que no existen en hoja 2
    For Each celda In Hoja1.Range("E2:E" & Hoja1.Range("E" & Rows.Count).End(xlUp).Row)
        ID = celda.Value
        If ID <> dict(ID) Then celda.EntireRow.Delete
    Next celda
 
End Sub

Obs: debes tener habilitadas las macros y activex en las opciones de excel:

habilitar-macros

Vista hoja 1:



vista_hoja1-y-boton-eliminar-filas
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 11
Ha aumentado su posición en 5 puestos en Excel (en relación al último mes)
Gráfica de Excel

Ayuda con Eliminar Filas con criterios

Publicado por Camilo (3 intervenciones) el 25/05/2021 18:21:16
Gracias David, si he trabajado con macros.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar