sábado, 3 de octubre de 2015

MACRO PARA LLENAR COMBOBOX CON DATOS DE UNA TABLA ACCES

De acuerdo al título de la entrada veremos cómo llenar un control combobox  tomando información de una tabla en acces.

El control combobox nos sirve para mostrar, seleccionar y escribir texto.

El control combobox tiene varios métodos entre ellos el método additem  el cual nos permite agregar datos al control.

Antes de escribir la macro cree una base de datos en acces de la cual tomare la información para llenar el control combobox.


Para empezar insertaremos un formulario en el entorno de desarrollo



Agregaremos al formulario un control combobox .



Agregaremos un boton de comando o commandButton


Crearemos el siguiente código que nos permitirá llenar el combobox , ejemplos como este los puedes encontrar en el curso online de excel.


Este procedimiento recibe como parámetro el formulario en que se encuentra el combobox.

Define las siguientes variables:
  1. DB de tipo dao.database que hace referencia a la base de datos.
  2. RS  de tipo dao.recorset que hace referencia a los registros de la tabla que recorreremos
  3. Strsql que contendrá la instrucción SQL que ejecutaremos.

Se abre la base de datos con la instrucción:
Set db.opendatabase(ubicación del archivo acces)

Ejecutamos la instrucción SQL y recorremos el resultado de la misma hasta llegar al final, mientras se recorre la consulta se agregan los registros al combobox con la instrucción
Fr.cmb1.Additem (registro de la consulta), donde Fr es el formulario , cmb1 es el control combobox.

Se debe agregar el siguiente código al botón de comando:


De esta forma cuando hagamos clic en el botón se invocara a la rutina Llenar_combo que definimos previamente,  el parámetro (ME) hace referencia al formulario.

Si ejecutamos la macro veremos lo siguiente:

Antes de hacer clic en el botón llenar veremos el combobox vacío


Después de hacer clic en el botón llenar veremos el combobox lleno



También podemos llenar un combobox con mas de una columna , en esta entrada te muestro como

Espero que esta macro te sea de utilidad , visita nuestro curso online de excel donde aprenderas mucho mas sobre este y otros temas relacionados con las macros.

En mi ebook Macrosymacros encontraras una colección de macros, que te serán muy útiles  en tus procesos de automatización de hojas de calculo, puedes encontrarlo aquí.

Si necesitas automatizar tus proceso en excel escríbeme a macrosymacros1@gmail.com.







2 comentarios:

  1. Gracias!! necesitaba justamente algo así, busqué y busqué ejemplos y ninguno cómo este y muy fácil de entender :)

    ResponderEliminar
  2. buenas amigo, gracias por el aporte. por mi inexperiencia estoy teniendo este percance con su codigo "no se ha definido el tipo definido por el usuario?" en donde asumo que hay algo ue no estoy viendo. y que al parecer tiene que ver con el tipo de variable as dao.recordset . espero con urgencia su ayuda mi amigo, muchas gracias de antemano... saludos

    ResponderEliminar