En la entrega pasada, estuvimos considerando que son Las Colecciones en Access, ahora les quiero mostrar algunos ejemplos de utilidad para este conocimiento.
Para ver la utilidad del objeto Collection en Access será necesario usar el ciclo For Each...Next para recorrer todos lo elementos encontrados en la colección de forma controlada, y ¿porque decimos que de forma controlada?, bueno el uso de For Each...Next nunca nos dará un error por un elemento no encontrado en la colección, sino que solo nos dará el resultado de los elementos existentes en la colección.
Usaremos 3 Ejemplos para ver la utilidad de las Colecciones en Access y son las siguientes:
Aquí les muestro el código VBA
*En este ejemplo estamos rellenando un control Combobox con todos los elementos encontrados en la Colección de Impresoras que tiene nuestra PC.
Aqui les muestro el código VBA
*En este ejemplo estamos rellenando un control Listbox con una Colección de Reportes existentes en nuestro sistema de Access.
Aqui el codigo VBA
*En este ejemplo estamos rellenando un control TextBox con todos los elementos encontrados en la Colección de Controles de Formulario actual.
Descargar Ejemplo Aquí
Para ver la utilidad del objeto Collection en Access será necesario usar el ciclo For Each...Next para recorrer todos lo elementos encontrados en la colección de forma controlada, y ¿porque decimos que de forma controlada?, bueno el uso de For Each...Next nunca nos dará un error por un elemento no encontrado en la colección, sino que solo nos dará el resultado de los elementos existentes en la colección.
Usaremos 3 Ejemplos para ver la utilidad de las Colecciones en Access y son las siguientes:
El Ejemplo #1 nos muestra como visualizar la impresoras existentes en nuestra PC, las que tenemos instaladas en nuestra PC para poder hacer uso de ellas.
Aquí les muestro el código VBA
Private Sub Form_Load() '************COLECCION DE IMPRESORAS*********** 'Se declara un variable de tipo IMPRESORA Dim impresora As Printer 'Se recorre la coleccion de impresoras de la aplicacion 'La variable impresora tendra el valor obtenido en cada ciclo 'recorrido en la coleccion. For Each impresora In Application.Printers 'se alimenta el combobox con cada elemento encontrado en 'la coleccion de impresoras Me.ComboListaDeImpresoras.AddItem impresora.DeviceName Next impresora End Sub
*En este ejemplo estamos rellenando un control Combobox con todos los elementos encontrados en la Colección de Impresoras que tiene nuestra PC.
El Ejemplo # 2 Nos muestra como rellenar un Control ListBox con todos Los reportes que tiene nuestro sistema de Access, con los elementos de la Colección de Reportes.
Aqui les muestro el código VBA
Private Sub Form_Load() '************COLECCION DE REPORTES*********** 'Se declara un variable de tipo REPORT Dim objReporte As AccessObject, dbs As Object Set dbs = Application.CurrentProject 'Se recorre la coleccion de reportes de la aplicacion 'La variable impresora tendra el valor obtenido en cada ciclo 'recorrido en la coleccion. For Each objReporte In dbs.AllReports 'se alimenta el listbox con cada elemento encontrado en 'la coleccion de reportes Me.ListaDeReportes.AddItem objReporte.Name Next objReporte End Sub
*En este ejemplo estamos rellenando un control Listbox con una Colección de Reportes existentes en nuestro sistema de Access.
El Ejemplo #3 nos muestra todos los controles que tenemos en nuestro Formulario actual, esto es muy útil a la hora de realizar alguna validación dinámica. Todos los nombres de los controles son mostrados en la caja de texto.
Aqui el codigo VBA
Private Sub Form_Load() '************COLECCION DE OBJETOS EN ESTE FORMULARIO*********** Dim ctrl As control Me.TextLosControles.SetFocus 'Se recorre la coleccion de objetos en el formulario For Each ctrl In Me.Controls 'Obtiene el nombre del control Me.TextLosControles.Text = Me.TextLosControles.Text + ctrl.Name & "|" Next ctrl End Sub
*En este ejemplo estamos rellenando un control TextBox con todos los elementos encontrados en la Colección de Controles de Formulario actual.
Descargar Ejemplo Aquí
excelente ejemplo muy util. Muchas gracias
ResponderBorrar