Saltar al contenido

Macro para bloquear opciones avanzadas de excel


Recommended Posts

publicado

Cordial saludo, gracias a todos por sus aportes...

Deseo impedir que los usuarios de mi aplicación tengan acceso a las opciones de excel,   en el ID de VBA,  en This WorkBook, tengo varias opciones para no permitir el acceso, adjunto código; pero si tecleo el comando abreviado Ctrl + P (Imprimir), se abre el menú que permite hacer modificaciones en opciones avanzadas, Compartir, Publicar, Información del archivo, que pueden ser modificados desde esa ventana. Lo que deseo es Cancelar todas esas opciones y dejar "Libre", solamente la opción de "Imprimir", que no encuentro por ningún lado... Por favor requiero su ayuda...

Private Sub Workbook_Activate()
' Evita copiar. cortar, y pegar
    Application.CutCopyMode = False
    Application.OnKey "^{C}", ""
    Application.CellDragAndDrop = False
    
    Application.CutCopyMode = False
    Application.OnKey "^{V}", ""
    Application.CellDragAndDrop = False
    
    Application.CutCopyMode = False
    Application.OnKey "^{X}", ""
    Application.CellDragAndDrop = False
 '  Ocultar esconder la barra de formulas
    Application.DisplayFormulaBar = False
   
    End Sub

Private Sub Workbook_Open()
Application.ScreenUpdating = False
Dim oCtrl As Office.CommandBarControl  ' Deshabilita Cut de todo el menu
    For Each oCtrl In Application.CommandBars.FindControls(ID:=21)
    oCtrl.Enabled = False
    Next oCtrl
    ' Deshabilita Copy de todo el menú
    For Each oCtrl In Application.CommandBars.FindControls(ID:=19)
    oCtrl.Enabled = False
    Next oCtrl
        ' Deshabilita Paste de todo el menú
    For Each oCtrl In Application.CommandBars.FindControls(ID:=6002)
    oCtrl.Enabled = False
    Next oCtrl
    Application.CellDragAndDrop = False

Rem ocultar Cinta de OPciones
Rem cambiar el 0, por "1", si se desea hacer visible la cinta de opciones
 ExecuteExcel4Macro ("show.toolbar(""ribbon"",0)")
Rem esconder las etiquetas de las hojas
  ' ActiveWindow.DisplayWorkbookTabs = False
  ActiveWindow.DisplayHeadings = False
  ActiveWindow.DisplayGridlines = False
  Application.DisplayStatusBar = False   ' Oculta la barra de estado
  Application.DisplayFullScreen = True   '  Ver Pantalla completa
  ActiveWindow.DisplayHorizontalScrollBar = False   ' Oculta la barra desplaza Horizontal
  ActiveWindow.DisplayVerticalScrollBar = False   ' Oculta la barra desplaza Vertical
   
    Application.OnKey "^{PGDN}", "" 'Disable Ctrl-PageUp
    Application.OnKey "^{PGUP}", "" 'Disable Ctrl-PageDown
 
    Sheets("INICIO").Select
    ActiveWindow.ScrollRow = 1
    ActiveWindow.ScrollColumn = 1
    Range("R19").Select
    Application.ScreenUpdating = True
End Sub

 

publicado

Hola estimado

No es posible bloquear todas las opciones de Excel, como las de la pestaña Archivo, a través de macros. La única forma es que personalices la  cinta de tu archivo con un editor de XML, con lo que podrías deshabilitar varias de las opciones que al parecer justamente quieres quitar. 

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.