Jump to content

Ejecución de Macro en Hoja Protegida


Recommended Posts

Hola Estimados, pido Disculpas por el Titulo del tema, vi que ya estaba con anterioridad, pero bloqueado, lo que quiero saber es que si hay alguna manera de que al ejecutar la macro en la hoja protegida me aparezca en la cinta de opciones habilitados la fuente el tipo de letra combinar celdas entre otros, ya que al ejecutar la macro aparecen todas esas opciones bloqueadas.

 

 

adjunto archivo e imagen

Captura de pantalla (4)_LI.jpg

foro.xlsm

Link to post
Share on other sites

Solo una Consulta Maestro Antoni; será posible que al ejecutar la macro se proteja solamente por ejemplo de A1 a AC20???? y que después de ese rango hacia abajo quede desprotegido..?

Link to post
Share on other sites

La protección es a nivel hoja, no obstante se puede cambiar la protección de la hoja al seleccionar una celda.

Revisa el adjunto, he añadido esta macro en la hoja:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Row > 20 Then 'Protección total hasta la fila 20
   ActiveSheet.Protect "prueba", AllowFormattingCells:=True
Else
   ActiveSheet.Protect "prueba", AllowFormattingCells:=False
End If
End Sub

 

foro (1).xlsm

Edited by Antoni
Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


  • Crear macros Excel

  • Posts

    • Sustituye tu macro por esta: Sub Sumar() Dim fila As Byte Application.ScreenUpdating = False With Sheets("STOCK") .Range("H3:L7") = "" For I = 2 To .Range("A" & Rows.Count).End(xlUp).Row - 1 fila = 0 Select Case .Range("B" & I).Interior.Color Case Range("H3").Interior.Color: fila = 3 Case Range("H4").Interior.Color: fila = 4 Case Range("H5").Interior.Color: fila = 5 Case Range("H6").Interior.Color: fila = 6 End Select If fila > 0 Then .Range("I" & fila) = .Range("I" & fila) + .Range("F" & I) .Range("I7") = .Range("I7") + .Range("F" & I) .Range("J" & fila) = .Range("I" & fila) / 2.8 .Range("J7") = .Range("I7") / 2.8 .Range("L" & fila) = (.Range("L" & fila) + .Range("B" & I) * .Range("F" & I)) .Range("L7") = (.Range("L7") + .Range("B" & I) * .Range("F" & I)) End If Next For I = 3 To 7: .Range("K" & I) = .Range("L" & I) / .Range("I" & I): Next .Range("L3:L7") = "" End With End Sub  
    • @santravis perdona por la tardanza, voy muy mal de tiempo. Te dejo una idea para empezar... con unas puntualizaciones. No he resuelto las columnas que son combinacion de dos. Cuidado con los titulos de las columnas de la hoja ordenado, tienen al final un espacio y los nombres asi no son identicos a los homonimos de la hoja 1archivo consulta.xlsx archivo consulta.xlsx
    • muchísimas gracias! funciona perfecto y lo he probado adaptándolo a lo mío y también va bien. ;). Gracias!
    • Para la creación de la TC hay distintas formas, pero cada una es valida En efecto Jose, PBI es un gran universo pero Excel siempre será nuestro gran aliado, y es además un gran complemento de PBI   Saludos 
  • Recently Browsing

    No registered users viewing this page.

×
×
  • Create New...

Important Information

Privacy Policy