Visual Basic - MACRO EXCEL BORRAR DATOS

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil

MACRO EXCEL BORRAR DATOS

Publicado por Ana (26 intervenciones) el 01/07/2022 08:05:34
Buenos días. A ver si me podéis ayudar. He creado una macro en excel para limpiar los campos de una hoja activa (consulta_Bo) entera, ciertos campos de otra hoja del mismo libro (BBDD_FORM_P) y una columna de una tercera hoja, también del mismo libro (Informe). El problema es que consigo que la hoja primera se borre bien, la tercera también pero en la segunda se quedan columnas sin borrar.
Adjunto la macro para que la echéis un vistazo a ver si me ayudáis a dar con la solución. Muchas gracias
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 Antoni Masana
Val: 1.259
Plata
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

MACRO EXCEL BORRAR DATOS

Publicado por Antoni Masana (558 intervenciones) el 01/07/2022 14:16:47
Sin ver el libro y los datos que tiene no es posible saber que borra y que no borra y la causa.

Esta instrucción hace cosas pero no siempre lo que esperas que haga:

1
Range(Selection, Selection.End(xlDown)).Select

Saludos.
\\//_
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

MACRO EXCEL BORRAR DATOS

Publicado por Ana (26 intervenciones) el 01/07/2022 17:15:49
Gracias Antoni. Adjunto el libro excel con las tres hojas a limpiar que comentaba para que puedas ver los campos que no limpia y que te decia en el documento de macro. En concreto no limpia las columnas de Y2 a la AA2 que aparecen en rojo en la hoja BBDD_FORM_P.
Muchas 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 RAUL
Val: 2
Ha aumentado su posición en 97 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

MACRO EXCEL BORRAR DATOS

Publicado por RAUL (443 intervenciones) el 01/07/2022 19:28:48
Hola corrí tu macro en el Excel adjunto y si esta limpiando las celdas del rango que indicas.

Pruébalo paso a paso incluyendo un punto de interrupción en el inicio de ese código (Range("Y2:AA2").Select), le das F8 y vas avanzando paso a paso y vas a ver que esta operando como lo necesitas.
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 Antoni Masana
Val: 1.259
Plata
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

MACRO EXCEL BORRAR DATOS

Publicado por Antoni Masana (558 intervenciones) el 01/07/2022 20:42:20
Esta macro resuelve el problema.
El problema es que la instrucción de ir hasta el final de la columna de datos salta hasta la primera celda vacía aunque tenga datos debajo.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
Sub FdR_Borrar()
    Dim Fila As Long, Final As Long
 
    Application.ScreenUpdating = False
    Application.Calculation = xlCalculationManual
    Application.EnableEvents = False
    ActiveSheet.DisplayPageBreaks = False
 
    ' ---&--- BORRAR DATOS
 
    Sheets("CONSULTA_BO_P").Select
 
    ActiveCell.SpecialCells(xlLastCell).Select
    Final = ActiveCell.Row()
 
    Range("B2:P" & Final).ClearContents
    Range("A2").Select
 
    ' ---&--- BORRAR DATOS
 
    Sheets("BBDD_FORM_P").Select
 
    ActiveCell.SpecialCells(xlLastCell).Select
    Final = ActiveCell.Row()
 
    Range("A2:C" & Final).ClearContents
    Range("N2:P" & Final).ClearContents
    Range("S2:S" & Final).ClearContents
    Range("U2:U" & Final).ClearContents
    Range("Y2:AA" & Final).ClearContents
    Range("AG2:AG" & Final).ClearContents
    Range("AU2:AW" & Final).ClearContents
    Range("A2").Select
 
    ' ---&--- BORRAR DATOS
 
    Sheets("INFORME").Select
 
    Range("B22").Select
    Range(Selection, Selection.End(xlDown)).Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.ClearContents
    Selection.ClearContents
 
    ' ---&--- Se posiciona
 
    Sheets("CONSULTA_BO_P").Activate
    Range("A7").Select
 
    Application.ScreenUpdating = True
    Application.Calculation = xlCalculationAutomatic
    Application.EnableEvents = True
    ActiveSheet.DisplayPageBreaks = True
    Application.CutCopyMode = False
End Sub

Saludos.
\\//_
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

MACRO EXCEL BORRAR DATOS

Publicado por Ana (26 intervenciones) el 04/07/2022 09:44:07
Muchas gracias!!! no daba con la solución y no veía cual podía ser el motivo. Ahora funciona perfectamente!!.
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