Eliminar filas de tabla con vba

Necesito eliminar filas de una tabla (como tabla), al iniciar el userform, pero solamente si contiene datos.

La tabla se llama "Datos" y comienza en celda "A5", tiene 12 columnas

Se agradece orientación.

1 Respuesta

Respuesta
2

No me quedó muy claro si necesitas eliminar las filas de una tabla o solo borrar sus datos.

Dejo una imagen para que aclares en este ejemplo cuáles serían las filas que debieran eliminarse o solamente borrar sus datos.

¿Aquí la tabla tiene 11 filas de datos... cuántas filas te quedarían luego del proceso?

Muy agradecido por respuesta estimada Elsa, eliminar todas las filas, quedaría solo la fila 2 en blanco

saludos,

Entonces esta sería la macro:

Sub eliminaDatosTabla()
'x Elsamatilde
Set hojax = Sheets("Simples")     'ajustar nombre de la hoja
Set Tablax = hojax.ListObjects(1)  '*
'cant de filas en la tabla
canti = Range(Tablax).Rows.Count
'si la tabla tiene más de 1 fila se quitan y se redefine el rango
If canti > 1 Then
    Tablax.DataBodyRange.ClearContents
    Tablax.Resize Range("$A$1:$C$2")      'ajustar rango
    [A2].Select  'opcional: selecciona la primera celda de la tabla
End If
End Sub

Está desarrollada para una tabla como la de la imagen anterior.

Debes ajustar nombre de la hoja y el rango total (en lugar de A:C)

Utilicé la expresión hojax. ListObjects(1) porque mi hoja tiene una sola Tabla.

Si no es así en tu caso, debes colocar entre () el nombre de la tabla que deseas controlar, por ejemplo: hojax. ListObjects("Datos")

* Te invito a visitar la sección Manuales de mi sitio. En el manual 500Macros+365 se incorporó el capítulo para el tratamiento de TABLAS, además de agregar ejemplos para esa versión Excel en el resto de las macros.

Sdos!

Elsa

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas