



Si necesitas tener una macro disponible para cualquier libro, te proponemos crear una macro para todos los libros Excel (Libro de macros personal).

Una macro de Excel se puede almacenar en el libro activo o en el libro de macros personal:
- LIBRO ACTIVO. La macro se almacena en el libro y solo se puede ejecutar al abrir el libro.
- LIBRO DE MACROS PERSONAL. La macro se almacena en Excel para que se pueda ejecutar sobre cualquier libro abierto.
GRABAR MACRO
Abrir un libro de Microsoft Excel.
Ir a: Cinta de Opciones
Pestaña: Programador o Desarrollador (según la versión Excel)
Grupo: Código
Grabar macro
. Mostrará cuadro de diálogo de grabar macro.
Si no está visible:
a. Ir a: Cinta de opciones
Pestaña: Archivo
Opciones. Mostrará la ventana de opciones de Excel.
b. Ir a: Pestaña: Archivo
Opciones. Mostrará la ventana de opciones de Excel.
c. Clic sobre: Personalizar cinta de opciones. Mostrará las opciones de personalizar la cinta.
d. Ir a: Fichas principales
Activar la casilla Programador (Desarrollador en Excel 2013). Para mostrar la ficha en la cinta de opciones.
Ir a: Nombre de la macro
Escribir: MiMacro. O el nombre deseado para la macro.
Ir a: Guardar macro
Seleccionar: Libro de macros personal. Tipo deseado donde guardar la macro (para cualquier libro de Excel).
Pulsar el botón Aceptar. Cierra la ventana y comienza la grabadora de macros.
Ir a: Cinta de Opciones
Pestaña: Programador o Desarrollador (según la versión Excel) / Grupo: Código
Detener grabación. Detendrá la grabación de la macro.
Pulsar el atajo de teclado Alt + F11. Mostrará el editor de Visual Basic.
Ir al panel de proyectos
Doble clic sobre VBAProject (PERSONAL.XLSB). Libro personal de Excel. Si el panel no está visible Ir a: Barra de menú
Ver
Explorador de proyectos. Mostrará la ventana donde escribimos la macro.
Localizar la rama Módulos
Doble clic para expandir Módulo1.
Doble clic sobre Módulo1.
Ir al Panel de macros
Localizar:
Sub Mi Macro()
'
' MiMacro Macro
'
'End Sub
Escribir el código deseado de la macro, por ejemplo:
Sub MiMacro()
Selection.Font.Bold = True
With Selection.Font
.Color = -16776961
.TintAndShade = 0
End With
End Sub
- La macro aplica negrita y color rojo a la celda activa o rango.
EJECUTAR MACRO
Ir a: Cinta de Opciones
Pestaña: Programador o Desarrollador (según la versión Excel) / Grupo: Código
Macros; O también, Atajo de teclado Alt + F8. Mostrará cuadro de diálogo de macro.
Ir a: Macros en
Seleccionar: PERSONAL.XLSB
Ir a: Nombre de la macro
Clic sobre la macro creada.
Pulsar el botón Ejecutar. Reproducirá la macro.
Para reproducir la macro se podrá insertar una acceso directo en la barra de acceso rápido o en la cinta de opciones.

Buenas tardes.
¿Es posible tener una macro que siempre este disponible?, es decir, que aunque no este abiero el libro personal.xlsb pueda hacer uso de la macro.
Muchas gracias.
Hola Mario,
Es necesario abrir el libro para ejecutar la macro. Pero el libro se puede abrir desde windows como archivo bat, Revisa el post.
Saludos.
Si programas un modúlo correctamente en un proyecto individual lo tendras en la biblioteca para cualquier libro nuevo.
Tengo el mismo problema, existe una planilla que se cambia mensualmente y tiene las macros; pero al ejecutar el libro con botones en la barra de tareas se abre el libro de donde se configuraron los botones.
necesito hacer una macro para crear varias pestañas en mi libro de excel pero no puedo guardarlo para que cuando quiera abrir otro libro me respeta la macro y la pueda utilizar en cualquier libro de excel
Hola Carmen,
Las macros se pueden guardar en "libro de macros personal" disponible para cualquier libro Excel, o "En este libro", disponibles solo para el libro activo.
Al iniciar la grabadora de macro nos permite seleccionar la opción deseada.
Saludos.
¿puedo grabar funciones en este libro personal y utilizarlas en cualquier libro?
Hola Gerardo,
Afirmativo, en el libro personal es común para cualquier libro Excel.
Saludos.
Hola buenas noches tengo un libro con 12 hojas que almacenan información de los meses del año, esos datos tengo que filtrarlos y hacer una tabla dinámica, posteriormente graficarlos, pare ello grabe una macro y la asigne a un botón, pero en cada hoja hago la macro, hay alguna forma para poder ejecutar la macro en cualquier hoja
Hola Patrícia,
Si la macro llama al mismo procedimiento de cada hoja no hay problema. Si son procedimientos individuales los puedes anidar en una misma macro.
Saludos.
Hola, estoy siguiendo los pasos para guardar la macro pero estoy usando un ejercicio que tambien esta en su web: http://trucosycursos.es/convertir-hipervinculos-en-texto-excel/
pero a la hora de guardar me aparece un error mencionando que se esperaba un end sub
Hola John,
La última línea de código deberá ser End Sub, para indicar el fin de la macro (como se indica).
Saludos.
Hola,
¿Es posible crear una macro donde extraiga archivos de un excel, pero antes de eso te pregunte de que archivo se desea sacar esa información?
Por ejemplo, cree una macro para que me extraiga cierta información de un excel, pero luego necesito extraer de las mismas columnas y filas información de otro excel, pero tengo que cambiarle el nombre al archivo para que me lo extraiga.
¿Este comando es posible?
saludos, estoy creando las macros pero no me las guarda.
al momento de cerrar excel
la macro desaparece.
Hola Victor,
El libro con macros se deberá de guardar con el tipo de: Libro de Excel habilitado para macros (*.xlsm). El tipo*.xlsx borrará las macros.
Saludos.
Buenas noches, le tengo una pregunta, necesito una macro limitada a un archivo excel y que al momento de abril otro archivo no se siga ejecutando. Es decir tengo un reloj en un archivo excel...pero abro otro archivo y el reloj aparece en ese nuevo archivo (se sigue ejecutando la macro del primer archivo)
Sub Hora()
Range("b8").Formula = ("=now()") 'sirve para ingresar la funcion ahora en excel
Application.OnTime Now + TimeValue("00:00:01"), "hora" 'sirve para decirle a la macro que se ejecute cada 1 segundo.
End Sub
Hola Enrique,
Sin más información creo que la macro la tienes guardada en el libro personal de Excel, inserta el código en el libro deseado.
Saludos.
Bueno yo guarde en TODOS LOS LIBROS, Pero no se como corregir el inconveniente. Sugerencias ?
Hola Enrique,
Si no indicas cual es el inconveniente, es difícil responder...
Saludos.
Espero puedas ayudarme, van varias veces que me ocurre, guardo una macro en el libro de macros personal y a los pocos días desaparece, se borra automáticamente o no se que pasa, sabrás porque ocurre esto? y como se puede solucionar? Gracias de antemano
Hola Eduardo,
Las macros del libro personal no tienen por que borrarse, excepto por alguna limitación del administrador.
Saludos.
cuando abro la ventana de proyectos únicamente me aparece VBAProjet (libro 1) como restablezco los otros elementos de la ventana que se han desaparecido
Hola José Luis,
Graba la macro y desde la pestaña de hojas y muestra el libro personal estará oculto.
Saludos.
GRACIAS LO INTENTARE SALUDOS CORDIALES
Buenos días:
Tengo una macro creada sobre "personal.xlsb". Mi problema es que, al llamarla desde otro libro Excel, el resultado de los cálculos se me presenta en una hoja del libro "personal.xlsb" y no en la hoja del libro con el que estoy trabajando.
¿A qué puede ser debido?
Gracias de antemano
Hola Guillermo,
La macro que dispones inserta los datos sobre el libro personal que es como está definido en el código. Tendrías que modificarlo para insertarlo donde desees.
Saludos.
Muchas gracias:
He cambiado "hoja1.cells (x,y)".por "ActiveSheet.Cells(x,y) y problema resuelto!.
Gracias por la rapidez en la respuesta!!!
Verifique y no tengo el archivo de macros personal en el inicio como crearlo para poder grabar las macros en el
Hola Orlando,
Sigue el procedimiento que se indica.
Saludos.