Realizar dos acciones con un mismo botón

Con la siguiente macro -puesta en un módulo- al apretar el botón quito todos los filtros y me posiciono en la primera celda vacía de la columna F.

Sub quitar_filtros()
Dim ultima As Long
ActiveSheet.ShowAllData
ultima = ActiveSheet.Cells(Rows.Count, "F").End(xlUp).Row
Cells(ultima + 1, 6).Select
End Sub

Lo que necesito es que apretando el mismo botón cuando no haya ningún filtro activado solamente lo que haga es posicionarme en la primera celda vacía de la columna F.

En resumen, al apretar el mismo botón:

  • Si hay algún filtro activado, quita todos los filtros y se posiciona en la primera celda vacía de la columna F (esto ya lo hace)
  • Si no hay ningún filtro activado, que solamente se posicione en la primera celda vacía de la columna F (es lo que deseo comience a hacer)

2 respuestas

Respuesta
1

Te anexo la macro con los cambios.

Primero revisa si existen filtros, si hay filtros los quita, si no hay filtros entonces se posiciona en la primera celda vacía

Sub quitar_filtros()
    Dim ultima As Long
    'Revisa filtro de autofiltro
    If ActiveSheet.AutoFilterMode Then ActiveSheet.AutoFilterMode = False
    'revisa filtro avanzado
    If ActiveSheet.FilterMode Then ActiveSheet.ShowAllData
    ultima = ActiveSheet.Cells(Rows.Count, "F").End(xlUp).Row
    Cells(ultima + 1, 6).Select
End Sub

.

'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

.

Avísame cualquier duda

.

Respuesta

Te aportó algo más que puede ser de ayuda con el tema de filtros

Este ejemplo busca mientras escribes y trabaja con filtro avanzado, quizás sea de utilidad

https://youtu.be/SWUB1hEXxUw 

visita http://programarexcel.com

Suscribe a https://www.youtube.com/channel/UCTKYXi9ljxxOAXXKgwWDDpQ para recibir en tu mail las actualizaciones de nuevos ejemplos que se presentan y puedes descargar.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas