Borrar los totales en un base de datos si cambian de fila, mes con mes

Tengo una base de datos al principio utilizo una macro grabada para borrar las columnas que no necesito
(Siempre es igual el acomodo)hasta dejarlas en solo 9 columnas, para después jalar los datos a otra base simplemente usando el "=". El problema es que en la parte de abajo de la base aparecen los totales de las tablas, que no los necesito.
No puedo usar una macro pregrabada, debido a que los rangos cambian mes con mes,
y a veces varían por 1000 datos, es decir a veces los totales a parecen en diferentes celdas.
Intente usar la función de Rangle clear, el problema es que solo borra los contenidos y no las columnas vacías. Https://drive.google.com/open?id=1-xdKywlwO7FEB7Lf7wWUXTCvB6Sg8WuH

2 Respuestas

Respuesta
2

Realiza lo siguiente.

- Carga tu base de datos.

- Ejecuta la macro que borra las columnas

- Graba una macro y pon las fórmulas en la parte de abajo.

- Regresa a detener a macro.

Pon aquí la macro para revisarla y hacer los ajuste para que funcione con rango dinámico.

Sub DepuRNS()
'
' DepuRNS Macro

Columns("A:A").Select
Selection.Delete Shift:=xlToLeft
Selection.Delete Shift:=xlToLeft
Columns("B:B").Select
Selection.Delete Shift:=xlToLeft
Columns("I:I").Select
Selection.Delete Shift:=xlToLeft
Columns("J:J").Select
Selection.Delete Shift:=xlToLeft
Rows("6:6").Select
Selection.Delete Shift:=xlUp
Range("A1:T4").Select
Selection.Delete Shift:=xlUp
Columns("G:G").ColumnWidth = 12.86
Columns("G:G").ColumnWidth = 13.43
Columns("C:C").ColumnWidth = 17.86
Columns("A:A").Select
Selection.NumberFormat = "m/d/yyyy"
Selection.NumberFormat = "dd/mm/yyyy;@"
Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
:=Array(1, 4), DecimalSeparator:="/", ThousandsSeparator:="/", _
TrailingMinusNumbers:=True
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Columns("G:G").Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Columns("H:H").Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Columns("I:I").Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Range("J3").Select
End Sub    

Supongo que tu macro elimina algunas columnas.

Después de eliminar algunas columnas, ¿en cuál columna queda el primer total? Según tu imagen el primer total está en la columna "E"

Otra duda, ¿en la columna "A" siempre hay datos?

Si es correcto lo anterior, entonces al final de tu macro, agrega lo siguiente:

    u = Range("A" & Rows.Count).End(xlUp).Row + 1
    Rows(u & ":" & Rows.Count).Clear

[Si te ayudó la información, no olvides valorar la respuesta.
Respuesta
1

Supongo que lo que quieres borrar es lo que esta en la imagen, la macro que ves en la imagen es dinámica sin importar cuantos datos tengas o quites o agregues esta siempre borrara los totales

y la macro es esta

Sub borrar()
Range("f7").Rows(Range("f7").CurrentRegion.Rows.Count + 2).Resize(6, 8).ClearContents
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas