jueves, 11 de agosto de 2022

Excel y Access (III): El uso de WHERE en las sentencias SQL

Hoy vamos a continuar trabajando con el RecorSet para importar datos de Access hacia Excel. En esta ocasión vamos a concentrarnos en las sentencias SQL y en específico en la instrucción WHERE que nos servirá para extraer registros que cumplen las condiciones específicas que deseemos. No olviden que trabajaremos con los archivos del artículo anterior (Enlace).

Entonces, vamos a recodar que nuestra variable llamada SQL es justamente con la que enviamos las sentencias SQL a Access y usaremos esa misma variable. Solo para recordar, la que usamos la vez anterior es:

SQL = “Select * From Vendedores”

No olvidando que Select es la instrucción que selecciona los registros y al poner un asterisco estamos diciendo que extraiga todos los registros de la tabla, o tablas, que indicamos a continuación con From.

Entonces ¿Cómo se usa Where? Verán que es relativamente fácil; por ejemplo, supongamos que queremos extraer solo los datos cuya columna “Sexo” tiene registros que dicen “Masculino”, pues basta colocar así:

SQL = “SELECT * FROM Vendedores WHERE Sexo= ‘Masculino’ ”

Es decir, estamos diciendo que extraiga todos los registros de la tabla “Vendedores” en donde el campo “Sexo” sea igual a “Masculino”. Ojo, al ser el campo “Sexo” del tipo Texto, es necesario que el parámetro enviado en el Where vaya entre dos apóstrofos. Por cierto, las instrucciones SQL pueden ir en minúsculas o mayúsculas; en esta ocasión las puse en mayúsculas solo con la intención de resaltarlas. Ah, por cierto, el resultado de la macro, con el cambio respectivo, debería ser este:

Se puede usar Where con cualquiera de los campos e incluso en más de uno a la vez. Por ejemplo, miren esto:

SQL = “SELECT * FROM Vendedores WHERE Sexo= ‘Masculino’  AND Tienda = ‘Tienda 002’ ” 

El resultado será el siguiente:

Así como AND, también podemos usar OR. Usando parámetros como el anterior y cambiando el AND por OR, podríamos dejar así la sentencia:

SQL = “SELECT * FROM Vendedores WHERE Sexo= ‘Masculino’ OR Tienda = ‘Tienda 002’ ”

¿Notan la diferencia? Ya no solo extrajo los registros que cumplen con ser masculino y de la Tienda 002, sino que esta vez se extraen los que son masculino o que también son de la Tienda 002.

También podemos hacer uso de los campos numéricos para usar con Where, aunque en la tabla solo es numérico el ampo “ID”, dado que estos son solo ejercicios, lo usaremos. Por ejemplo, supongamos que queremos los mayores de 10, entonces pondríamos así:

SQL = “SELECT * FROM Vendedores WHERE ID > 10”

Por cierto, a los valores de los campos numéricos no se les coloca apóstrofos. En la hoja deberíamos tener los siguientes datos después de correr la macro:

También se puede usar menor (<) e igual (=) para dichos valores numéricos, no dejen de probarlos.

Y eso, amigos y amigas, es todo por hoy, espero les haya gustado. En la próxima ocasión seguiremos con Where pero aplicado a fechas, que es un tema, además de recurrente, que se le hace difícil a muchas personas. Hasta la próxima.

Abraham Valencia
Lima, Perú

miércoles, 10 de agosto de 2022

Entrevista a Benito Moreira Estévez: Complemento (add-in) MAccessExcel

Entrevista a Benito Moreira Estévez (España) para presentar su complemento (add-in) llamado "MAccessExcel", que ha elaborado y puesto al servicio de la comunidad de Excel. Acompáñennos y conozcan el interesante aporte que permite extraer datos desde Access y muchas otras cosas. ¡No se la pierdan!

Un abrazo a todos y todas.

Abraham Valencia
Lima, Perú

domingo, 7 de agosto de 2022

Automatizando Excel con otros programas (I): Librerías (ActiveX) hechas con Visual Basic 6.0

Hoy comenzamos con los procesos para automatizar Excel a través de otros programas y, en muchos casos, proteger los código generados. En esta ocasión vamos a aprender a crear librerías (*.dll) ActiveX con Visual Basic 6.0, un programa que fue uno de los más exitosos de Microsoft, en su momento, y que aún puede usarse y elaborar código que sigue siendo útil para las últimas versiones de Excel.

Un abrazo a todos y todas.

Abraham Valencia
Lima, Perú

domingo, 31 de julio de 2022

Automatizando Excel con VSTO ¿Quieres tú aprenderlo?

Hoy en día nuevamente entra en boga el tema de proteger nuestras macros y, ante las nuevas formas que van apareciendo para automatizar Excel, VSTO parece volver a presentarse como alternativa que impide se pueda copiar dichos códigos y a la vez seguir automatizando las tareas de Excel, entonces ¿Es importante aprender otros lenguajes, a ti te gustaría conocer más sobre ellos? En este video les dejo algunos detalles del uso y ventajas del VSTO, pero sobre todo creo dejo algunas preguntas abiertas para el debate. Espero les guste y comenten..

Un abrazo a todos y todas.

Abraham Valencia
Lima, Perú