Note: The other languages of the website are Google-translated. Back to English

¿Cómo obligar a los usuarios a guardar como un libro de trabajo habilitado para macros?

Cuando guarde un libro de Excel, se guardará como formato de archivo xlsx de forma predeterminada, y este formato de archivo eliminará los códigos de macro del libro de trabajo si hay varios códigos. Para conservar los códigos, debe guardar el libro de trabajo con el formato de libro de Excel habilitado para macros. ¿Cómo podría obligar a los usuarios a guardar como un libro de trabajo habilitado para macros?

Obligar a los usuarios a guardar como un libro de trabajo habilitado para macros con código VBA


flecha azul burbuja derecha Obligar a los usuarios a guardar como un libro de trabajo habilitado para macros con código VBA

Para guardar el libro de trabajo como libro de trabajo habilitado para macros de forma predeterminada, el siguiente código de VBA puede ayudarlo, haga lo siguiente:

1. Mantenga pulsado el ALT + F11 teclas para abrir el Microsoft Visual Basic para aplicaciones ventana.

2. Luego haga doble clic ThisWorkbook bajo el Proyecto VBA sección para abrir un nuevo módulo en blanco, y luego copie y pegue el siguiente código en el módulo:

Código de VBA: fuerza para guardar el libro de trabajo como libro de trabajo habilitado para macros de forma predeterminada:

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
'Updateby Extendoffice
Dim xFileName As String
If SaveAsUI <> False Then
    Cancel = True
    xFileName = Application.GetSaveAsFilename(, "Excel Macro-Enabled Workbook (*.xlsm), *.xlsm", , "Save As xlsm file")
    If xFileName <> "False" Then
      Application.EnableEvents = False
      ActiveWorkbook.SaveAs Filename:=xFileName, FileFormat:=xlOpenXMLWorkbookMacroEnabled
      Application.EnableEvents = True
    Else
      MsgBox "Action Cancelled"
      Cancel = True
      Exit Sub
    End If
End If
End Sub

doc force guardar como xlsm 1

3. Luego guarde y cierre esta ventana de código, a partir de ahora, cuando los usuarios guarden como este libro de trabajo, se guardará como Libro de Excel habilitado para macros formato de forma predeterminada como se muestra en la siguiente captura de pantalla:

doc force guardar como xlsm 2


Las mejores herramientas de productividad de oficina

Kutools para Excel resuelve la mayoría de sus problemas y aumenta su productividad en un 80%

  • Reutilizar: Inserte rápidamente fórmulas complejas, gráficos y cualquier cosa que hayas usado antes; Cifrar celdas con contraseña; Crear lista de distribución y enviar correos electrónicos ...
  • Barra de súper fórmula (edite fácilmente varias líneas de texto y fórmulas); Diseño de lectura (leer y editar fácilmente un gran número de celdas); Pegar en rango filtrado...
  • Combinar celdas / filas / columnas sin perder datos; Contenido de celdas divididas; Combinar filas / columnas duplicadas... Prevenir celdas duplicadas; Comparar rangos...
  • Seleccione Duplicado o Único Filas; Seleccionar filas en blanco (todas las celdas están vacías); Super Find y Fuzzy Find en muchos libros de trabajo; Selección aleatoria ...
  • Copia exacta Varias celdas sin cambiar la referencia de la fórmula; Crear referencias automáticamente a varias hojas; Insertar viñetas, Casillas de verificación y más ...
  • Extraer texto, Agregar texto, Eliminar por posición, Quitar espacio; Crear e imprimir subtotales de paginación; Convertir entre contenido de celdas y comentarios...
  • Súper filtro (guardar y aplicar esquemas de filtros a otras hojas); Orden avanzado por mes / semana / día, frecuencia y más; Filtro especial en negrita, cursiva ...
  • Combinar libros y hojas de trabajo; Combinar tablas basadas en columnas clave; Dividir datos en varias hojas; Conversión por lotes de xls, xlsx y PDF...
  • Más de 300 potentes funciones. Compatible con Office/Excel 2007-2021 y 365. Compatible con todos los idiomas. Fácil implementación en su empresa u organización. Funciones completas Prueba gratuita de 30 días. Garantía de devolución de dinero de 60 días.
pestaña kte 201905

Office Tab lleva la interfaz con pestañas a Office y hace que su trabajo sea mucho más fácil

  • Habilite la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
  • Abra y cree varios documentos en nuevas pestañas de la misma ventana, en lugar de en nuevas ventanas.
  • ¡Aumenta su productividad en un 50% y reduce cientos de clics del mouse todos los días!
officetab parte inferior
Comentarios (11)
Aún no hay calificaciones. ¡Sé el primero en calificar!
Este comentario fue minimizado por el moderador en el sitio
Esto fue muy útil y funcionó de maravilla, gracias :)
Este comentario fue minimizado por el moderador en el sitio
me ahorró mucho dolor - muchas gracias
Este comentario fue minimizado por el moderador en el sitio
¡Buena esa!

¡Me ahorró muchos dolores de cabeza! :)
Este comentario fue minimizado por el moderador en el sitio
Estoy usando Excel 2016 para Mac, y cuando uso este código VBA para lograr "forzar guardar como .xlsm", aparece el siguiente error:

Error en tiempo de ejecución '1004':

El método 'GetSaveAsFilename' del objeto '_Application' falló

Cualquier guía que alguien pueda proporcionar sobre este error y cómo puedo necesitar ajustar el código para que funcione en la versión Mac de Excel sería muy apreciada.
Este comentario fue minimizado por el moderador en el sitio
formato de archivo: = 52 es mejor que hacer un libro de trabajo habilitado para macros. formato de archivo: = 51 es un libro de trabajo normal.
Este comentario fue minimizado por el moderador en el sitio
Sigue recibiendo un ERROR 1004.
Uso de Off365 2016 para MAC. ¿Tienes una solución?
Este comentario fue minimizado por el moderador en el sitio
Hola jonathan,
Este código funciona bien en Windows Office, pero no se probó en MAC.
Debe buscar un código para trabajar en MAC.
¡Gracias!
Este comentario fue minimizado por el moderador en el sitio
Cualquier forma de tener este VBA en un archivo de plantilla
Este comentario fue minimizado por el moderador en el sitio
¿Alguna forma de tener este VBA en un archivo que sea un verdadero tipo de archivo de plantilla?
Este comentario fue minimizado por el moderador en el sitio
Cuando esté listo para crear la plantilla, creo que debe usar la ventana Inmediato para ejecutar
ActiveWorkbook.SaveAs Filename:="INGRESE SU NOMBRE DE PLANTILLA", FileFormat:=xlOpenXMLTemplateMacroEnabled
Este comentario fue minimizado por el moderador en el sitio
El código VBA que obliga al usuario a guardar en formato de archivo .xlsm funciona muy bien para mí. Estuve buscando esta solución durante bastante tiempo. Muchas gracias por la ayuda!
No hay comentarios publicados aquí todavía
Deje sus comentarios
Publicar como invitado
×
Califica esta publicación:
0   Personajes
Ubicaciones sugeridas

Seguinos

Copyright © 2009 - www.extendoffice.com. | Reservados todos los derechos. Energizado por ExtendOffice, | Mapa del Sitio
Microsoft y el logotipo de Office son marcas comerciales o marcas comerciales registradas de Microsoft Corporation en los Estados Unidos y / o en otros países.
Protegido por Sectigo SSL