Poner los registros de un db en labels diferentes

Hola a todos.
Tengo una tabla con una serie de registros, estos son limitados, es decir, máximo 10.
Tengo un formulario con un array de labels donde quiero que en cada una de las labels se muestre un registro al entrar al formulario.
Tengo el siguiente código:
Private Sub Form_Load()
Const sPathBase As String = "Alumnos.mdb"
Set db = OpenDatabase(sPathBase)
Set rs = db.OpenRecordset("SELECT * FROM Asignaturas", dbOpenDynaset)
Dim Asig As String
Dim i As Long
With rs
Asig = rs!NombreAsignatura
With Label6(i)
For i = 0 To 9
Label6(i).Caption = Asig
rs.MoveNext
Next i
End With
End With
End Sub
Al entrar al formulario, sólome sale el primer registro, es decir, la primera asignatura.
¿Me podéis decir que estoy haciendo mal?
Muchas gracias de antemano.

1 respuesta

Respuesta
1
Es debido a que la asignación de la variable Asig la has dejado fuera del bucle for, prueba así,
Private Sub Form_Load()
Const sPathBase As String = "Alumnos.mdb"
Set db = OpenDatabase(sPathBase)
Set rs = db.OpenRecordset("SELECT * FROM Asignaturas", dbOpenDynaset)
Dim Asig As String
Dim i As Long
For i = 0 To 9
Asig = rs!NombreAsignatura
Label6(i).Caption = Asig
rs.MoveNext
Next i
End Sub
PD, He removido los With que no eran necesarios.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas