Macro actúa en pantalla normal y no en pantalla completa

Esta macro actúa en pantalla normal y no en pantalla completa y no se como corregirlo o si estoy haciendo algo mal.
Antes me actuaba perfecta y ahora no y no se porque.

Private Sub Worksheet_Activate()
Range("B8:O8").Select
Selection.EntireColumn.Hidden = False
Range("L9,B9,C9,G9:O9,B9,P9,Q9").Select
Selection.EntireColumn.Hidden = True
Range("A9").Select
Selection.ColumnWidth = 65
End Sub

1 respuesta

Respuesta
1

Me funciona en pantalla completa (maximizada) o con la pantalla otro tamaño.

O a qué le llamas "pantalla normal" y "pantalla completa"

Revisa las columnas a mostrar y las columnas a ocultar

Primero muestras de la B a la O

Range("B8:O8").Select
Selection.EntireColumn.Hidden = False

Luego ocultas estas columnas

Range("L9,B9,C9,G9:O9,B9,P9,Q9").Select
Selection.EntireColumn.Hidden = True

Ocultas la columna L, luego la B, luego la C, luego de la G a la O, este rango ya abarca la columna L que tienes al principio, luego repites otra vez la B y por último la P y la Q.

Ya ejecuté la macro y me oculta las columnas indicadas.

Hola Dante

La pantalla completa la tengo así:

Application.DisplayFullScreen = True 'Excel se ejecuta en el modo de pantalla completa
Application.DisplayFormulaBar = False 'Ocultar la barra de formulas.
ActiveWindow.DisplayWorkbookTabs = False 'Oculta las fichas de las hohas
Dim c
For Each c In CommandBars
c.Enabled = False 'Ocultar la barra de menus.
Next

Antes me funcionaba perfecta y ahora no.

Un saludo

Igual me funciona, Intenta lo siguiente:

Primero muestra, oculta columnas, y luego culta menús

Private Sub Worksheet_Activate()
    Application.DisplayFullScreen = False
    Application.DisplayFormulaBar = True
    ActiveWindow.DisplayWorkbookTabs = True
    Dim c
    For Each c In CommandBars
    c.Enabled = True
    Next
    '
    Range("B8:O8").Select
    Selection.EntireColumn.Hidden = False
    Range("L9,B9,C9,G9:O9,B9,P9,Q9").Select
    Selection.EntireColumn.Hidden = True
    Range("A9").Select
    Selection.ColumnWidth = 65
    '
    Application.DisplayFullScreen = True 'Excel se ejecuta en el modo de pantalla completa
    Application.DisplayFormulaBar = False 'Ocultar la barra de formulas.
    ActiveWindow.DisplayWorkbookTabs = False 'Oculta las fichas de las hohas
    Dim c
    For Each c In CommandBars
    c.Enabled = False 'Ocultar la barra de menus.
    Next
End Sub

Esta hoja, tiene tres macros:

Sub Celdas_oculta()
Range("B8:O8").Select
Selection.EntireColumn.Hidden = False
Range("L9,B9,C9,G9:O9,B9,P9,Q9").Select
Selection.EntireColumn.Hidden = True
Range("A9").Select
Selection.ColumnWidth = 65
Range("E9").Select
End Sub
Sub Celdas_muestra()
Range("B8:P8").Select
Selection.EntireColumn.Hidden = False
Range("A9").Select
Selection.ColumnWidth = 30
Range("E4").Select
End Sub
Sub Celdas_muestra_COSTO()
Range("A7:P7").Select
Selection.EntireColumn.Hidden = False
Range("F7:K7,M7:O7,P7").Select
Range("M7").Activate
Selection.EntireColumn.Hidden = True
Range("A9").Select
Selection.ColumnWidth = 65
Range("E4").Select
End Sub

Uso las tres y me funcionan perfectamente, si las uso directamente las tres independiente de como las use en pantalla normal o completa.
Enla hoja que las uso tengo puesto:
Private Sub Worksheet_Activate()
Call Celdas_oculta
End Sub
Y resulta que en pantalla normal me actúa perfecto, pero en pantalla completa no me funciona y antes me funcionaban perfecto.
Estas son las macros:

Sub PANTALLACOMPLETA()

Application.DisplayFullScreen = True 'Excel se ejecuta en el modo de pantalla completa
Application.DisplayFormulaBar = False 'Ocultar la barra de formulas.
ActiveWindow.DisplayWorkbookTabs = False 'Oculta las fichas de las hohas
Dim c
For Each c In CommandBars
c.Enabled = False 'Ocultar la barra de menus.
Next
End Sub
Sub PANTALLANORMAL()
ActiveSheet.Unprotect Password:="1" ' Desproteger hoja
Application.CommandBars("Web").Visible = False ' Oculta web
Application.DisplayFullScreen = False ' Excel se ejecuta en el modo de pantalla normal
ActiveWindow.DisplayWorkbookTabs = True ' Muestra las fichas de las hohas
Application.DisplayStatusBar = True ' Muestra la barra de estado
Application.WindowState = xlMaximized ' Pantalla maximizada
Dim c
For Each c In CommandBars
c.Enabled = True ' Mostrar la barra de menus.
Next
End Sub

No se explicarlo mejor

Ahora no te entiendo.

Estás protegiendo la hoja, si proteges la hoja, primero debes desproteger,

Private Sub Worksheet_Activate()
    '
    ActiveSheet.Unprotect Password:="1"
    Range("B8:O8").Select
    Selection.EntireColumn.Hidden = False
    Range("L9,B9,C9,G9:O9,B9,P9,Q9").Select
    Selection.EntireColumn.Hidden = True
    Range("A9").Select
    Selection.ColumnWidth = 65
    '
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas