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 comment
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 comment
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 comment
Share on other sites

  • Crear macros Excel

  • Posts

    • Muchas gracias a los dos. Ambas respuestas me han servido, pero por sencillez he optado por la de JSDJSD. No obstante, como comenté anteriormente, tengo que tener siempre activa una impresora (de tickets) entonces si le doy a la macro, al crearse el PDF lo hace en el formato de esa impresora. Por tanto, pensé en el inicio de ejecutar la macro poner:  Application.ActivePrinter = "Microsoft Print to PDF" Y una vez finalizada la macro, cambiar a la impresora de Tickets, pero me da error. ¿Hay alguna forma de conseguir esto que comento? Gracias.
    • Ya puedes descargar un Test de Excel, hecho con el cálculo iterativo de las fórmulas de Excel.¡Mentira!¡No lo vas a poder descargar!He incrustado el test en mi blog, y sólo vas a poder realizar el test en modo online, desde un navegador Web o con una tableta o un móvil Android o Mac.   Enlace aquí:https://pedrowave.blogspot.com/2021/10/test-de-excel-con-calculo-iterativo.html     Ventajas de tener el Test de Excel en la nube: No contiene macros VBA ni Office Script. Se actualiza automáticamente al ser un Excel en la Web. Siempre verás la versión más actualizada del Test. Todos los usuarios harán el Test en las mismas condiciones. Se puede hacer el Test en la nube, incluso sin tener Excel instalado. Puedes hacer comentarios al Test en la nube. Puedo actualizar el Test cuando quiera para añadir más preguntas. Puedo modificar su comportamiento, mejorar su uso y/o corregir errores. Puedo proteger mucho mejor mis derechos de autor, para que no se pueda copiar mi idea de este Test de Excel. Gracias anticipadas por seguirme, por tus reacciones y por tus comentarios.
    • Prueba esto:   Sub guarda_pdf()     ruta = ActiveWorkbook.Path & "\salida3.pdf"     ActiveSheet.PageSetup.PrintArea = "$A$2:$P$42"     Application.PrintCommunication = False     With ActiveSheet.PageSetup         .LeftHeader = ""         .CenterHeader = ""         .RightHeader = ""         .LeftFooter = ""         .CenterFooter = ""         .RightFooter = ""         .LeftMargin = Application.InchesToPoints(0)         .RightMargin = Application.InchesToPoints(0)         .TopMargin = Application.InchesToPoints(0)         .BottomMargin = Application.InchesToPoints(0)         .HeaderMargin = Application.InchesToPoints(0)         .FooterMargin = Application.InchesToPoints(0)         .PrintHeadings = False         .PrintGridlines = False         .PrintComments = xlPrintNoComments         .CenterHorizontally = True         .CenterVertically = True         .Orientation = xlLandscape         .Draft = False         .PaperSize = xlPaperLetter         .FirstPageNumber = xlAutomatic         .Order = xlDownThenOver         .BlackAndWhite = False         .Zoom = False         .FitToPagesWide = 1         .FitToPagesTall = 1         .PrintErrors = xlPrintErrorsDisplayed         .OddAndEvenPagesHeaderFooter = False         .DifferentFirstPageHeaderFooter = False         .ScaleWithDocHeaderFooter = True         .AlignMarginsHeaderFooter = True         .EvenPage.LeftHeader.Text = ""         .EvenPage.CenterHeader.Text = ""         .EvenPage.RightHeader.Text = ""         .EvenPage.LeftFooter.Text = ""         .EvenPage.CenterFooter.Text = ""         .EvenPage.RightFooter.Text = ""         .FirstPage.LeftHeader.Text = ""         .FirstPage.CenterHeader.Text = ""         .FirstPage.RightHeader.Text = ""         .FirstPage.LeftFooter.Text = ""         .FirstPage.CenterFooter.Text = ""         .FirstPage.RightFooter.Text = ""     End With     Application.PrintCommunication = True          ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _         ruta, Quality:=xlQualityStandard, _         IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _         False End Sub  
    • Aquí adjunto un excel de prueba.  Lo que me gustaría es guardar las tablas (en la prueba están vacías) en una única hoja horizontal en PDF.  La opción de imprimir que comenta Exceler C no me sirve, ya que tengo que tener una impresora activa todo el rato y no puedo cambiarla por la de Microsoft Print To PDF. Gracias. Prueba.xlsm
  • Recently Browsing

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

Privacy Policy