Eliminar datos de una tabla

Paso a explicarles mi duda.

Tengo una tabla que ocupa todas estas celdas A3:G10324, de esa misma tabla copie unos valores y me quedo otra tablita en otra hoja que tiene las siguientes celdas A3:G551

Los valores de la tabla más chica están en la tabla grande.. ¿cómo puedo hacer para eliminar todos esos datos de la tabla grande?

1 respuesta

Respuesta
1

Para saber cuáles datos de la tablita están en la tabla grande, puedes explicar si tienes una llave o un dato único, por ejemplo, el dato de la columna A es único o puedes tener duplicados. Si me comentas de qué forma identificas qué registro de la tablita está en la tabla grande, en base a eso creo una macro para que de forma automática lea los registros de la tablita y los elimine en la tabla grande.

En la columna C (a partir de C3) los datos son únicos, puede que llegue a haber alguno duplicado, pero si esta duplicado en la tabla lo esta en la tablita también. 

¿Y las tablas están en la misma hoja o en diferentes hojas?

Podrías poner una imagen o dos, para ver cómo están los datos en las 2 tablas

La hoja donde están todos los datos se llama "Tabla General" y la hoja donde están los datos que quiero eliminar de la tabla general se llama "Costo Gas Imp"

Ambas dos tienen este formato:

Te anexo la macro

Sub Eliminar_Registros()
'Por. Dante Amor
    Application.ScreenUpdating = False
    Set h1 = Sheets("Tabla General")
    Set h2 = Sheets("Costo Gas Imp")
    col = "C"                   'columna de datos
    Set d = h1.Range(col & h1.Range(col & Rows.Count).End(xlUp).Row + 1)
    Set r = h1.Columns(col)
    '
    For i = 3 To h2.Range(col & Rows.Count).End(xlUp).Row
        dato = h2.Cells(i, col)
        Set b = r.Find(dato, LookAt:=xlWhole)
        If Not b Is Nothing Then
            celda = b.Address
            Do
                Set d = Union(d, h1.Range(col & b.Row))
                Set b = r.FindNext(b)
            Loop While Not b Is Nothing And b.Address <> celda
        End If
    Next
    '
    d.EntireRow.Delete
    Application.ScreenUpdating = True
    MsgBox "Fin"
End Sub

Sigue las Instrucciones para un botón y ejecutar la macro

  1. Abre tu libro de Excel
  2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
  3. En el menú elige Insertar / Módulo
  4. En el panel del lado derecho copia la macro
  5. Ahora para crear un botón, puedes hacer lo siguiente:
  6. Inserta una imagen en tu libro, elige del menú Insertar / Imagen / Autoformas
  7. Elige una imagen y con el Mouse, dentro de tu hoja, presiona click y arrastra el Mouse para hacer grande la imagen.
  8. Una vez que insertaste la imagen en tu hoja, dale click derecho dentro de la imagen y selecciona: Tamaño y Propiedades. En la ventana que se abre selecciona la pestaña: Propiedades. Desmarca la opción “Imprimir Objeto”. Presiona “Cerrar”
  9. Vuelve a presionar click derecho dentro de la imagen y ahora selecciona: Asignar macro. Selecciona: Eliminar_Registros
  10. Aceptar.
  11. Para ejecutarla dale click a la imagen.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas