[RESUELTO] Error en Macro al proteger todas las hojas

Desarrollo de Macros y programación en UNO, usar las API, llamar programas externos...

[RESUELTO] Error en Macro al proteger todas las hojas

Notapor physic » Jue Nov 01, 2018 1:03 pm

Personal, he creado la siguiente macro en Excel para proteger todas las hojas (hojas) del archivo Excel. funcionó muy bien.

        * Pero ahora, en OpenOffice está acusando un error en la siguiente línea:
 ThisComponent.Sheet.Protect DrawingObjects: = True, Contenido: = True, escenarios: = True, Contraseña: = lPass, AllowFiltering: = true

El siguiente código sigue:

Código: Seleccionar todo   Expandir vistaContraer vista
REM  *****  BASIC  *****
'Função que protege todas as planilhas de um arquivo
Option VBASupport 1
Sub lsProtegerTodasAsPlanilhas()
    'Declara as variáveis necessárias
    Dim lPass As String
    Dim lQtdePlan As Integer
    Dim lPlanAtual As Integer
   
    'Sheets(1).Activate
    If Sheets(1).ProtectContents = True Then Exit Sub
   
    'Solicita a senha
    'O método InputBox é utilizado para solicitar um valor através de um formulário
    lPass = InputBox("Proteger todas as planilhas:", "Senha", ActName)

    'Inicia as variáveis
    'O método Worksheets.Count passa a quantidade de planilhas existentes no arquivo
    lQtdePlan = Worksheets.Count
    lPlanAtual = 1

    'Loop pelas planilhas
    'A função While realiza um loop de código enquanto não passar por todas as planilhas contadas
     While lPlanAtual <= lQtdePlan
        'O método Worksheets(lPlanAtual).Activate ativa a planilha conforme o índice atual 1, 2, 3...
        Worksheets(lPlanAtual).Activate
       
        Cells.Select
        Selection.Locked = True  'Bloqueia
        Selection.FormulaHidden = True  'Oculta
        Range("A1").Select

        'O método .Protect proteje a planilha passando os parâmetros para proteger
        'objetos de desenho, conteúdo, cenários e passando o password digitado   
       ThisComponent.Sheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:=lPass, AllowFiltering:=True
       
         ActiveWindow.Zoom = 120
         ActiveWindow.DisplayHeadings = False

        'Muda o índice para passar para a próxima planilha
        lPlanAtual = lPlanAtual + 1
    Wend
   
    Sheets("Plan1").Select

    'O método MsgBox exibe um formulário de aviso ao usuário.
    MsgBox "Planilhas protegidas!"

End Sub


 * Puede ayudarme por favor corregir el error en esta línea!
muchas gracias.
Última edición por physic el Mié Ene 09, 2019 9:28 pm, editado 4 veces en total
LibreOffice 5.4.4.2 >>> Windows 7
physic
 
Mensajes: 80
Registrado: Lun Oct 29, 2018 12:55 am

Re: Error en Macro al proteger todas las hojas

Notapor fornelasa » Lun Nov 05, 2018 11:04 pm

Open Office no soporta esta instrucción:
Código: Seleccionar todo   Expandir vistaContraer vista
AllowFiltering:=True

Por lo tanto
Código: Seleccionar todo   Expandir vistaContraer vista
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:=lPass
debería funcionar.
Saludos, Federico.
lo 6.1.2 | aoo 4.1.6 | win 7/10
¡Un aplauso para todos los que luchan por proteger y promover la Web abierta!
Avatar de Usuario
fornelasa
 
Mensajes: 3174
Registrado: Jue Feb 17, 2011 8:30 pm
Ubicación: Estado de México, México.

Re: [Resuelto] Error en Macro al proteger todas las hojas

Notapor Itzealva » Mar Ene 08, 2019 12:16 am

Hola estoy diseñando una macro pero estoy teniendo problemas con las hojas,

necesito que se ejecute desde una hoja visible y desprotegida y luego abra una hoja oculta y protegida con datos que no pueden ser modificados la desbloquee la ejecute y la vuelva a proteger y ocultar

me podrían ayudar?
Itzealva
 
Mensajes: 2
Registrado: Mar Ene 08, 2019 12:11 am

Re: Error en Macro al proteger todas las hojas

Notapor Itzealva » Mié Ene 09, 2019 6:16 pm

Hola, ya lo resolvi gracias!!

Pero ahora no se como bloquear un boton que hice con un userform para que funcione en una hoja protegida
Itzealva
 
Mensajes: 2
Registrado: Mar Ene 08, 2019 12:11 am

Re: Error en Macro al proteger todas las hojas

Notapor RMG » Mié Ene 09, 2019 6:23 pm

Hola Itzealva, te sugiero que abras un nuevo hilo con tu problema y con un título explicativo sobre el mismo, seguro que obtienes mejor ayuda.

Saludos
OpenOffice 4.1.6 y LibreOffice 5.4.5.1 en W-10, y LibreOffice 4.1.6.2 en Open Suse 13.1(VirtualBox)
RMG
 
Mensajes: 3486
Registrado: Mar Nov 17, 2009 6:59 am
Ubicación: Valencia - España


Volver a Macros y API UNO

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 22 invitados