epelpad

Programar macros en Excel sin saber programar



excel



Programar macros en excel, se que la mayoría de los usuarios ven muy lejos esta posibilidad, principalmente cuando ven el código de alguna macro, no solo esta en ingles, sino que ademas parece no tener sentido.




Pues ahora te enseñare como puedes diseñar tus propias macros incluso si no tienes idea de lo que es programar, es decir, podrás generar una macro que facilitara tu trabajo de una manera exponencial y no sera necesario que tu directamente escribas una linea de código.



Video: como Programar Macros en Excel




link: https://www.youtube.com/watch?v=bV33KJxP-gw&feature=youtu.be


Quizá esto te parezca extraño, como podría alguien programar una macro en excel sin escribir el código de la misma, en realidad es bastante sencillo, esto porque excel nos permite programar macros usando una grabadora de macros, esa opción viene ya integrada en excel, así que no tendrás que hacer nada especial para lograrlo.


Donde esta la Grabadora de Macros.


La opción para programar macros mediante el uso de la grabadora esta en la ficha “DESARROLLADOR” de excel.


Pero la ficha desarrollador no esta activada normalmente, así que es muy probable que tu no la veas en la parte superior de tu excel, donde esta “INICIO, INSERTAR, DISEÑO DE PAGINA…”, así que sera necesario activar esa opción.


Activar la ficha desarrollador de excel


1-Abrir Excel. 



2- Click en archivo / Opciones/ Personalizar cinta de opciones 


3- En la sección derecha de la ventana siguiente, activa la casilla de verificación de la opción “Desarrollador”




macros


1- Click en aceptar.



Ahora ya podrás ver la ficha Desarrollador.

Como Crear macros en Excel usando la grabadora.


Al usar la grabadora para programar macros excel, básicamente se esta generando código por cada acción que realizas una vez que presionas el botón de grabar maco, es decir, enciendes la grabadora y luego haces el procedimiento que normalmente realizas para determinada tarea en excel, una vez que terminas el proceso simplemente detienes la grabación dando click en detener grabación.


Aquí hay algo muy importante a destacar, para lograr que las macros generadas sean lo mas eficientes posible, es de suma relevancia que prepares muy bien el procedimiento a realizar durante la grabación, eso significa que tal vez haya cosas que puedas mejorar en tu proceso.


Un ejemplo claro de esto es el proceso de copiar y pegar, en la mayoría de los casos se usa el ratón para seleccionar un rango determinado, la grabadora de macros detectara ese rango seleccionado y así lo guardara, pero es posible que ese rango no sea siempre igual, en esos casos la macro resultante no cumpliría con lo que realmente se requiere.


El caso de copiar y pegar se puede resolver usando una combinación de teclas para seleccionar, por ejemplo, seleccionar la primera celda del rango que se va a seleccionar, presionar CONTROL – SHIFT – FLECHA DERECHA y CONTROL – SHIFT – FLECHA ABAJO.


Lo descrito en el párrafo anterior hace que la macro selecciona hasta el ultimo dato a la derecha y luego hasta el ultimo dato hacia abajo, de ese modo se logra seleccionar toda la información siempre, esto si no hay celdas vacías en tanto en la primera fila como en la primera columna.


Una vez que tenemos claro el procedimiento que debemos seguir para la tarea que deseamos programar, ya estamos listos para iniciar.


Para esto veremos un ejemplo donde la idea es almacenar los datos de registro diarios dentro de una hoja concentradora, es decir, tenemos una hoja donde se registra la información del día, al cerrar el día se debe pasar esta información a otra hoja donde se va almacenando el registro de todos los días, seria nuestra base de datos general.


sin saber


En esta imagen se puede observar la hoja de registro diario, lo que queremos es pasar esos registros a la hoja concentradora.

1- Antes de iniciar, es importante seleccionar una celda que no sea la primera que se usara al realizar la tarea a programar, incluso es bueno seleccionar una hoja diferente a la que se usara primero para tal operación.



2- Dar click en la ficha PROGRAMADOR


3- Click en Grabar Macro


promar




1- Poner un nombre a la macro



Programar macros en Excel sin saber programar




2-Aceptar.



3-Seleccionar la hoja donde están los datos.



4-Click en la primera celda de los datos a copiarPresionar CONTROL – SHIFT – FLECHA DERECHA para seleccionar todo el rango hacia la derecha, esto también se puede hacer de la manera tradicional con el ratón, esto en caso de que sea posible que puedan existir celdas vacías en esa primera fila.



5-Una vez que la primera fila con datos se ha seleccionado, debemos seleccionar hacia abajo hasta el ultimo registro, esto se hace con CONTROL – SHIFT – FLECHA ABAJO, es importante hacerlo de esta manera para los casos donde los datos a copiar ocupan rangos dinámicos, así no aseguramos de que siempre se seleccionara todo el rango aunque no siempre sea igual.



6-Control copiar.



7-para copiarSeleccionar la hoja donde se pegaran los datos.



8-Seleccionar la primera celda donde se pegaran los datos.



9-Click derecho en esa primera celda.



10-Click en insertar los datos copiados.



11-Click en la opción desplazar las celdas hacia abajo ( esto es para que cuando haya datos ya registrados, estos se desplacen hacia abajo y no se borren ).



12-Aceptar.



13-Click en la celda A1



14-Seleccionar la hoja de donde se copiaron los datos.



15-Presionar ESC para desactivar el modo copiar.



16-Presionar la tecla suprimir, si se desea eliminar la información que ya se respaldo.



17-Seleccionar la celda A1.



18-Click en detener grabación en la ficha Desarrollador.





Ver el código de la macro que se ha generado.

Con el procedimiento anterior se ha generado un código VBA de esa macro, puedes verlo presionando ALT – F11


excel


En la sección de la derecha de esa ventana se puede ver el código generado, esto también te puede ayudar para aprender a escribir código tu mismo.

Como ligar esa macro a un botón para ejecutarla.


Puedes ligar esa macro a un botón, de ese modo podrás ejecutarla en cualquier momento dando click en ese botón.


1- En la ficha desarrollador
da click en insertar.


2- Seleccionar el primer botón dando click en el .


3- en la hoja de calculo da click para pegar el botón, puedes cambiar su tamaño y texto.


4- te saldrá una ventana donde podrás seleccionar la macro a la que quieres ligar el botón




macros




De este modo cada vez que des click en ese botón se ejecutara la macro que generaste.




Como puedes observar, programar macros en excel es sumamente sencillo, el trabajo realmente lo haces una vez al grabar la macro, después haces todo ese trabajo simplemente dando click en un botón.






21 comentarios - Programar macros en Excel sin saber programar

Guermes
gracias por la info capo
alesandman
picardía la tuya de tirar esto en medio de maldonadinga
+10
kevonvon
Muchas gracias, andaba buscando algo de esto +10
supercabuya
Esto sí es Inteligencia Colectiva!!! Van mis +10 y a Fav.
cimarrones
Mis 10 por la magnífica explicación. Me hacía bls para enseñarle por telf. a una amiga que necesita hacer macros.
Gracias...!!!
costabariloche
Gracias, genio. Te puedo pedir un consejo, a ver si se puede hacer? Arme un excel para la administración de mi distribución de libros. Cuando me pagan, en una de las hojas registro las ventas: "Tal libro" -2 (ejemplares). Alli tengo que poner el numero en negativo (-2) para que se descuente del stock en una planilla resumen que armo. Luego copio y pego el registro en otra hoja donde armo el Recibo: "Tal libro" 2 (ejemplares), aqui en positivo. Para esto, tengo que ir modificando de a uno, a mano, los numeros negativos en positivos. ¿Existe alguna manera, una formula, para que en una columna al escribir un numero atuomaticamente se escriba en negativo, o bien para que al copiar un numero negativo, aparezca en positivo? Intente con formato condicional y no lo logre. Gracias!
kriss82
Hola! se puede con "pegado especial" haciendo click en "restar". Pero no debe tener ningún valor la columna donde estas pegando el negativo, si no, va actuar como fórmula y lo va a restar a ese valor que ya estaba en la celda.
Ojalá que sirva
OrdenDelTemple_
Que buen post, a favorito para verlo despues con mas calma.
tango111_
rsumen lvl5... bajalas de internet... salu80000000000000000000
BB01790
Excelente aporte y explicación!!!