Entradas

Encendido de un LED desde VBA/Excel

Imagen
En mis estudios universitarios me tocó cursar la materia de Robótica, la cual fue sumamente interesante ya que tuve investigar como programar los puertos y algo de electrónica…
Para el curso opte por comprar un adaptador USB/RS-232 y un convertidor RS-232 de macho a hembra para facilitar las conexiones.
Me decide por el RS-232 ya que es mas fácil de programar, ademas que anteriormente había comprado un adaptador de USB/Paralelo y mi NetBook no lo detecto como puerto.
En mis investigaciones encontré varias alternativas para poder prender un LED. Es decir utilizar la PC como un control de encendido y apagado, ya que si podemos prender un simple led, también podremos prender y apagar cualquier equipo electrónico (lamparas, licuadoras, etc…). Pero por ahora solo veremos como manipular el encendido y apagado de un LED.
Hay varias maneras para esto: Usar la API de WindowsUsar el control NetComm que reemplaza al control Comm brindado por VBHacer uso del manejo de archivos (la cual es sumamen…

Abrir archivos desde una macro

Imagen
En algunas situaciones al tener una macro que deba abrir un archivo desde cierta ubicación de nuestro equipo o unidad de red para poder procesarlo o leer información del mismo, muchos de los que van empezando con la programación de macros suelen tener en su código algo similar a esto:
Sub AbrirArchivo()
Dim libro As Workbook
Set libro = Workbooks.Open("C:\Users\Luis Antonio\Documents\WebScraping.xlsm")
' Código para extraer o procesar información del libro...
End Sub
Este código anterior es directo, pero tiene una desventaja, el nombre del archivo esta incrustado dentro del código. Si se deseará abrir  un archivo distinto tendría que cambiarse el código algo nada práctico y eficiente.
Sub AbrirArchivo2()
Dim libro As Workbook
Dim ruta As String
ruta = ThisWorkbook.Sheets("Setup").Range("A1")
Set libro = Workbooks.Open("C:\Users\Luis Antonio\Documents\WebScraping.xlsm")
' Código para extraer o procesar información del libro...
End Sub
Es…

Seleccionar y Procesar Celdas Especiales en Excel - Pte 2

Imagen
Este post es el complemento del anterior: Seleccionar y Procesar Celdas Especiales en Excel.
En esta segunda entrega les comparto un vídeo práctico en el cual aplico el uso de filtros y selección de celdas especiales con la herramienta de “Ir a Especial” para poder procesar un listados de datos. 
Se trata de un ejemplo real en el cual se puede apreciar que dominando las herramientas antes mencionadas se pueden depurar extensas listas de datos sin hacer uso de macros al igual que aplicando estas mismas se pueden programar macros eficientes para el procesamiento automático.


Seleccionar y Procesar Celdas Especiales en Excel

Imagen
La mayor parte de las personas que trabajan con Excel a veces se encuentran con situaciones en las cuales tienen que gestionar o procesar rango de datos que contienen celdas especiales. Dichas celdas especiales pueden contener números, cadenas de caracteres, fórmulas, errores, espacios en blanco o inclusive se puede dar la situación de que se tenga que quitar objetos como pueden ser formas, dibujos o imágenes dependiendo de donde se obtenga la información con la que se trabaja.
Afortunadamente Excel cuenta con una herramienta llamada “Ir a especial”,  la cual nos permitirá seleccionar de manera rápida y práctica celdas  que cumplan determinadas características o inclusive objetos como imágenes o formas. Para hacer uso de esta herramienta bastará con presionar la tecla F5, con lo cual nos aparecerá el cuadro de “Ir a”, ahí daremos clic al botón “Especial”, el cual nos llevará al cuadro de “Ir a Especial”. Y a partir de ahí poder seleccionar las celdas especiales con las que necesitemo…

El Analista Inconforme - Introducción a la programación de macros en Excel

Imagen
Excel es una de las herramientas poderosas con las que su puede contar y son muy pocas las personas que llegan a aprovechar al máximo la potencia que este brinda. No solamente sirve para llevar pequeños controles, listados de datos, creación de reportes o estadísticas; por citar solo algunos de los cientos de usos que se le pueden dar.

En esta ocasión, quiero compartir con ustedes mi iniciación en la programación de aplicaciones en VBA/Excel. Desde 2006, vengo trabajando con VBA/Excel y realmente me he quedado perplejo de toda  la potencia que se obtiene al fusionar estas magnificas herramientas.
Años atrás, solo utilizaba Excel para tareas repetitivas. En mi primer empleo como analista en el departamento de crédito y cobranza. Me encontraba fastidiado de hacer siempre los mismos pasos para realizar mis análisis de diferencias de pagos; efectuados por cadenas de autoservicio como son Gigante (ser llamaba… ahora es de Soriana), Costco, Comercial Mexicana y WaltMart.
Y me frustraba aun…

Abrir Excel desde teclado y otros programas

Imagen
La mayor parte de los usuarios que trabajan con Excel y no conocen las ventajas de hacer uso de los atajos desde teclado usualmente abren Excel de alguna de las siguientes formas más habituales: Dan clic en el botón inicio y en "buscar programas" proceden a escribir Excel y con esto aparece un listado de programas que coinciden con la palabra de búsqueda y dan clic sobre el icono de la versión que se tenga instalada.Otros suelen crear un acceso directo en su escritorio y desde ahí dar doble clic para abrirlo. Pero abrir Excel desde teclado al igual que otros programas es mucho mas conveniente por las siguientes razones: Es mucho mas rápido hacer uso del tecladoNo se pierde tiempo en desplazar el cursor y dar clic o clics sobre accesos directosNos ahorramos espacio en el escritorio al no tener tantos accesos a programas Para poder abrir Excel desde teclado bastara con pulsar las teclas: "Windows + R", con ello aparecerá el cuadro de dialogo "Ejecutar" ahí p…

Copiar y pegar datos usando una sola linea de código en VBA/Excel

Como es bien sabido el grabador de macros es una magnifica herramienta para todo aquel principiante que se va iniciando en el mundo de la programación de macros, el inconveniente es que genera demasiado código basura. Por ejemplo al copiar datos de un rango a otro dentro de una misma hoja, el grabador siempre selecciona el rango, lo copia, después selecciona el rango destino y finalmente copia los datos en este. Es por ello que podemos ver un código como el siguiente:

Range("A1:A5").Select
Selection.Copy
Range("C1").Select
ActiveSheet.Paste

El fragmento de código anterior se puede optimizar reescribiéndolo de la siguiente manera:

Range("A1:A5").copy Destination:=Range("C1")

Todo el trabajo de copiado y pegado se realiza con tan solo una linea de código. Este metodo es excelente cuando se trabaja exclusivamente sobre valores de datos, la palabra "Destination=" (nombre del parámetro) es opcional.