Al parecer no me expresado correctamente,
Quiero saber si hay sentencias para MS Access
porque la base de datos es MS Access en la misma
pc donde se ejecuta la aplicación VB.
Cuando uso sentencias SQL, aparecen errores.
Intencionalmente he puesto los identificadores de cada
ciclo de 0 a 5, de manera tal que coinciden con combo.listindex
entonces "primer ciclo" en el combo es index = 0 y ID en la tabla "ciclo" = 0; "segundo ciclo " en el combo es index= 1 y ID en la tabla "ciclo" = 1
Y en la tabla cursos la llave foranea que permite enlazar cada curso con su respectivo ciclo es ID_Ciclo.
Para acceder a las tablas he definido los recordsets y he creado los métodos, en un modulo como sigue, esto funciona bien
Global CONE As New ADODB.Connection
Global RSCUR As New ADODB.Recordset
Global RSCIC As New ADODB.Recordset
Sub main()
With CONE
.CursorLocation = adUseClient
.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= " & App.Path & "\Registro.mdb; Persist Security Info=False"
'.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\WINDOWS\Escritorio\ExaFinal\Proyecto\Reg istro.mdb;Persist Security Info=False"
MsgBox "Conexion Establecida"
End With
Form1.Show
End Sub
Sub cur()
With RSCUR
If .State = 1 Then .Close
.Open "select * from cursos", CONE, adOpenStatic, adLockOptimistic
End With
End Sub
Sub cic()
With RSCIC
If .State = 1 Then .Close
.Open "select * from ciclo", CONE, adOpenStatic, adLockOptimistic
End With
End Sub
En el formulario en el evento load cargo el combo1 con los ciclos y funciona
Private Sub Form_Load()
cic
Do Until RSCIC.EOF
Combo1.AddItem RSCIC!Nom_Cic
RSCIC.MoveNext
Loop
End Sub
Pero para cargar los cursos en el listbox, no he sabido programar en el evento click del combo, primero la búsqueda del valor combo1.listindex en la tabla ciclo, en el campo ID_Ciclo y que después presente los valores hallados en el listbox1
Una pregunta acalanto: Ese código se debe programar en el evento click del combo?? Espero esta vez haberme dejado entender.
Muchas gracias por tu ayuda |