Mostrar columnas por rango (fechas) y el resto ocultarlas (365 días del año).

Agradezco si me pueden colaborar una forma o macro para mostrar solamente las columnas que indique en un rango y el resto ocultar. Tengo una tabla donde va por columnas, nombre, cargo, ubicación y luego van las fechas de los 365 días del año (turnos). La idea es mostrar solamente el rango de fecha que se le indique. Muchas gracias.

1

1 Respuesta

4.655.775 pts. Sancho, si los perros ladran ...

¿En qué columna empiezan las fechas?

¿En dónde indicarías el rango de fechas? ¿En un par de celdas?

Buenas tardes y gracias. Las fechas se indicarían en C3 y D3, y empezarían en la columna F (F5).

Sigue las Instrucciones para poner la macro en worksheet
1. Abre tu libro de excel
2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
3. Del lado izquierdo dice: VBAProject, abajo dale doble click a worksheet(tu hoja)
4. Del lado derecho copia la macro

Cada que modifiques las fechas en C3 o D3 las columnas se ocultan en automático.

Private Sub Worksheet_Change(ByVal Target As Range)
'Por.DAM
    If Not Intersect(Target, Range("C3:D3")) Is Nothing Then
        Application.ScreenUpdating = False
        j = 5
        Do While True
            j = j + 1
            If Cells(5, j) = "" Then j = j - 1: Exit Do
        Loop
        For i = 6 To j
            If Cells(5, i) < Range("C3") Or Cells(5, i) > Range("D3") Then
                Columns(i).EntireColumn.Hidden = True
            Else
                Columns(i).EntireColumn.Hidden = False
            End If
        Application.ScreenUpdating = True
        Next
    End If
End Sub

Saludos. Dante Amor
No olvides finalizar la pregunta.

Buenos días y muchas gracias. Excelente resultado. Un último comentario y es que cuando finaliza la operación, pareciera que siguiera buscando, titilando la pantalla; claro está que con un simple click se soluciona. Puede ser una mejora. Gracias por la ayuda, no soy muy experto en Excel.

Esto simplifica bastante un trabajo repetitivo que hay que hacer todos los meses.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas