Cómo creé mi primera macro

Uno de mis primeros empleos fue el de “procesador de pedidos” en una gran central de compras. Todos los días recibía entre 100 y 150 archivos con pedidos de las tiendas asociadas a nuestra empresa. Estos archivos me llegaban en formato csv que debía introducir en el sistema informático de la empresa.

Parecía un trabajo sencillo, de hecho lo era porque no tenía que pensar mucho. Solamente tenia que separar en columnas los diferentes campos (creo recordar que eran alrededor de cinco), cambiar el orden de las columnas e importar ese archivo en el sistema informático.

Al principio lo hacía todo a mano. Mi antecesor lo llevaba haciendo así desde hace mucho tiempo y por el momento iba a esperar para ver cómo mejorar esto. Ni que decir tiene que jamás había oido hablar de macros o VBA.

Cierto día, buscando otro tipo de información, me topé con una web sobre Excel (imposible recordar cuál) en la que se hablaba de simplificar tareas repetitivas con algo llamado “grabadora de macros”…

Como soy más curioso que un gato, me puse a investigar qué era eso de la grabadora de macros y descubrí que servía para grabar las acciones que ibas haciendo en la hoja de cálculo para luego reproducirlas infinitas veces con muy pocos clics de ratón. Es decir que añadir o quitar filas o columnas, introducir valores o crear fórmulas, podría hacerlo con un solo clic de ratón. ¡¡Qué descubrimiento!!

 

¿Qué pasos seguí para automatizar mi trabajo?

 

  • En primer lugar pensé en el orden óptimo de los movimientos de datos que iba a hacer dentro de mi csv para evitar cualquier posible error y acelerar el funcionamiento.
  • Pulsé en el botón Grabar macro que se encuentra en la parte inferior izquierda de la pantalla (la versión de Excel que utilizaba entonces estaba incluida en Office 97. La versión que utilizo ahora, la de la imagen es 2010):

GrabarMacro

  • Le dí un nombre a la macro y le asigné un atajo de teclado (creo que Ctrl + s, que en teclado español (de España) sirve para subrayar textos). La macro la guardé en el libro de macros personal para que estuviese disponible en cualquier archivo que abriera desde mi equipo. Para cerrar el cuadro de diálogo pulsé Aceptar.

ImportarPedidos

  • A continuación cambié el orden de las columnas para colocarlas en la posición adecuada para que el sistema informatico lo leyera correctamente.
  • Una vez que estuvo todo perfectamente formateado, finalicé la grabación pulsando en el botón Detener grabación que se encuentra en el mismo sitio que el de inicio de la grabación (en el extremo inferior izquierdo).

Después de finalizar el trabajo tenía que comprobar que la macro repetía las acciones que acababa de grabar, así que abrí un archivo csv nuevo y pulsé Ctrl + s….

Y efectivamente, ¡¡¡en menos de medio segundo había hecho el trabajo de casi dos minutos!!!

 

El código que generó la macro grabada fue el siguiente:

 

Sub ImportaPedidos()
'
' ImportaPedidos Macro
'
' Acceso directo: Ctrl+s
'
    Columns("A:A").Select
    Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
        Semicolon:=True, Comma:=False, Space:=False, Other:=False, FieldInfo _
        :=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1)), _
        TrailingMinusNumbers:=True
    Columns("B:B").Select
    Selection.Cut
    Columns("A:A").Select
    Selection.Insert Shift:=xlToRight
    Columns("E:E").Select
    Selection.Cut
    Columns("D:D").Select
    Selection.Insert Shift:=xlToRight
End Sub

 

Depurar el código para que trabajara más deprísa pero desde ese día me dije que si había sido capaz de crear esa sencilla macro, podría ser capaz de crear cosas más complicadas.

¿Me ayudas a promocionar este contenido?

Share on facebook
Facebook
Share on google
Google+
Share on twitter
Twitter
Share on linkedin
LinkedIn
Consultoría plantillas Excel
Foro Excel
La destreza y el perfeccionismo quizá sean las dos virtudes que me permiten ayudar a mis clientes a facilitar las tareas administrativas de sus negocios... y son las culpables de que me guste el origami. +info.

¿Quieres ahorrarte horas de trabajo diario?

macros excel manual

Descarga este informe y aprenderás a crear tus propias macros de forma rápida y sencilla

INFORMACIÓN BÁSICA SOBRE PROTECCIÓN DE DATOS

Responsable: Sergio Andrés Celemín

Finalidad: Gestionar y enviar información de boletines y promociones a través de correo electrónico.

Legitimación: Consentimiento del interesado.

Destinatarios: Tus datos se encuentran alojados en mi hosting Hetzner Online GmbH.

Derechos: Puedes ejercitar en cualquier momento tus derechos de acceso,
rectificación, supresión, oposición y demás derechos legalmente establecidos a
través del email sergio@ayudaexcel.com.

Información adicional: Encontrarás más información en la política de privacidad.