Buscar en este blog

Comparte con tus Amigos...

Ejemplos de Colecciones en Access | Objeto Collection

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:



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í

1 comentario:

Entradas populares