MACRO PARA INMOVILIZAR PARTE DE UNA HOJA EXCEL

Hace unos días estuve realizando un pequeño programa que interactuaba en una hoja Excel. Como no estaba utilizando userforms, resulta que el “cuadro de mando” del programa se movía en función de si me desplazaba por la hoja o si movía la rueda del ratón.

Para evitar que la hoja se mueva y fijar solo la parte que te interesa mostrar, os dejo una pequeña macro que funciona cuando abres tu trabajo:

Private Sub Workbook_Open()
Sheets("Portada").ScrollArea = "A2:M45"
End Sub

Esta macro inmoviliza la hoja “Portada” en el área entre A2 y M45, no permitiendo movimientos en horizontal ni vertical.

Por cierto, debéis colocarla en el objeto “ThisWorkbook”.

Espero que os sirva a la hora de presentar vuestros programas.

Saludos 😉

Descarga el archivo pulsando enINMOVILIZAR HOJA

Anuncios

6 pensamientos en “MACRO PARA INMOVILIZAR PARTE DE UNA HOJA EXCEL

  1. hola buenas, un gusto saludarte, mi aprecio y respeto, quiero consultar lo siguiente: tengo una hoja excel 2013 cualquiera y debo llenarla de datos y necesito de que al salir de esta hoja de datos, todas las filas con datos se bloqueen (con una clave) y cuando vuelva a entrar a esta hoja las filas con datos anteriores esten bloqueados con clave (y no puedan modificar, ni editar, si pueda sumar ordenar copiar) y se pueda continuar escribiendo en las siguientes filas datos nuevos. la hoja debiera estar protegida solo a la modificacion con una contraseña al igual que el editor del viausl basic . quedo muy agradecido de antemano gracias atte enpabu@yahoo,es

    Me gusta

    • Hola Enrique:

      Prueba pegando esté código en el editor de VBA en ThisWorkBook.

      Private Sub Workbook_SheetActivate(ByVal Sh As Object)
      Cells.Select
      With Selection
      Control = Application.CountA(Selection)
      End With
      ActiveSheet.Unprotect ("123")
      Selection.Locked = False
      If Control > 0 Then
      ActiveSheet.Columns.SpecialCells(xlCellTypeConstants, 23).Select
      Selection.Locked = True
      ActiveSheet.Protect ("123")
      End If
      End Sub

      Espero que te sea de utilidad. Saludos.

      Me gusta

¿Te ha gustado?. Deja un comentario

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s