Excel - Ayuda a mejorar/cambiar esta macro

 
Vista:
sin imagen de perfil
Val: 44
Ha aumentado 1 puesto en Excel (en relación al último mes)
Gráfica de Excel

Ayuda a mejorar/cambiar esta macro

Publicado por santi (24 intervenciones) el 12/11/2018 12:04:05
Buenos días Amigos,

Tengo esta macro que funciona bien:

1
2
3
4
5
6
7
8
9
10
11
12
13
Sub SALTO()
 
 
Dato = Range("A1").Value
ultima = Range("A2000").End(xlUp).Row
Range("A2").Select
While ActiveCell.Row <= ultima
If ActiveCell.Value = "Salto" Then
ActiveWindow.SelectedSheets.HPageBreaks.Add Before:=ActiveCell
End If
ActiveCell.Offset(1, 0).Select
Wend
End Sub

Con esta macro cuando encuentra la palabra "Salto" introduce un salto de página. Hasta aquí todo va bien. Lo que necesito es que si desaparece la palabra salto, elimine el salto de página que ha introducido.

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: 4.146
Plata
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Ayuda a mejorar/cambiar esta macro

Publicado por Antoni Masana (1456 intervenciones) el 27/11/2018 12:30:46
Solo hace falta cambiar la primera línea del código, más que nada porque no tiene ninguna utilidad.
Añado la definición de la variable y la limpieza de los saltos de página.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Sub SALTO()
   Dim ultima as Long
    ' ---&--- Elimina todos los saltos de hoja
    ActiveSheet.ResetAllPageBreaks
    ' ---&--- Busca la última línea
    ultima = Range("A2000").End(xlUp).Row
    ' ---&--- Inicia el corte de hojas
    Range("A2").Select
    While ActiveCell.Row <= ultima
       If ActiveCell.Value = "Salto" Then
          ActiveWindow.SelectedSheets.HPageBreaks.Add Before:=ActiveCell
       End If
       ActiveCell.Offset(1, 0).Select
    Wend
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