¿Cómo creo una plantilla en Microsoft Excel para que al ser cumplimentada se restaure por completo?

Hola, mi nombre es Esteban y quiero hacer una plantilla (que tiene varias hoas, esto no se si importa o no) en la cual al abrirse una planilla nueva a partir de la plantilla desaparezcan todas las barras, incluso las personalizadas, y que la barra que tiene todos los nombres (Archivo, Ver, Formato, Herramientas, Datos, Ayuda) desaparezca y que en su lugar solo queden los iconos de Nuevo, Abrir, Cerrar, Guardar, Imprimir), y luego al cerrarla, se restaure todo como estaba antes. Pero la cosa no termina allí, ya que en la plantilla hay en una celda uso Lista (esa que se hace desde datos, validación) y quiero que la planilla al momento de cerrarla, agregue el nombre de una celda a la columna de donde están los nombres en la plantilla. Espero que se pueda hacer, desde ya muchísimas gracias.

1 respuesta

Respuesta
1
Vuelto de las fiestas, acabo de ver tu pregunta.
Si la entendí correctamente, debes hacer lo siguiente:
Deberías tener creada, primero, una barra de herramientas con los íconos a mostrar. (A modo de ejemplo la llamaré "TUMENU")
Esta barra de herramientas puede estar "flotando en la hoja" o agregadas en la parte superior, adjunta a las barras standard de MS Excel.
Luego, introduce estos códigos en el archivo que tiene que mostrar el menú especial. Para ello abre el Editor de Visual BAsic (Alt+F11), busca la carpeta "ThisWorkbook" ( o "Estelibro"), y pega -en el panel de la derecha- estas macros:
Estos códigos contienen las funciones para ocultar las barras standard.
De todos modos, un truco simple para averiguar estos nombres es usar la "grabadora de macros", efectuar el procedimiento de ocultar manualmente y luego ver cómo lo escribió en el Editor.
Private Sub Workbook_WindowActivate(ByVal Wn As Excel.Window)
Application.ScreenUpdating = False
Application.CommandBars("Standard").Visible = False
Application.CommandBars("Formatting").Visible = False
Application.CommandBars("Worksheet Menu Bar").Visible = False
Application.CommandBars("TUMENU").Visible = True
Application.ScreenUpdating = True
End Sub
Private Sub Workbook_WindowDeactivate(ByVal Wn As Excel.Window)
Application.ScreenUpdating = False
Application.CommandBars("Standard").Visible = True
Application.CommandBars("Formatting").Visible = True
Application.CommandBars("Worksheet Menu Bar").Visible = True
Application.CommandBars("TUMENU").Visible = False
Application.ScreenUpdating = True
End Sub
Cierra el editor, graba el archivo, cierrallo y vuelve a abrirlo. Así tendrás ese menú disponible.
Estas son dos macros basadas en eventos que mostrarán u ocultarán el menú TUMENU según se active o desactive la ventana de este archivo. Esto es más amplio que el evento de apertura de archivo, ya que te permite tener otro archivo abierto y ocultar el menú si cambias de ventana.
Para la segunda parte de tu pregunta agrega a continuación de las macros anteriores, la siguiente:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Sheets("Hoja1").Select
Range("C4").Select
Selection.End(xlDown).Select
Activecell.offset(1,0).Select
ActiveCell.FormulaR1C1 = Range("M2").Address
End Sub
Debido a que no tengo muchos más datos asumí que tu lista a agregar está en la Hoja1, empezando en la celda C4 y agregará el "nombre de una celda" al final de la lista considerando la celda M2 (aunque no entendí muy bien el sentido de esto).
Espero haberte ayudado
Un abrazo!
Fernando

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas