He declarado una variable como bien has visto, y la relleno con el select.
Cita: Do Until rsCiudad2.EOF()
idprovincia = rsCiudad2.Fields(0)
Loop
Esto esta mal es asi:
Cita: If Not rsCiudad2.EOF() Then
idprovincia = rsCiudad2.Fields(0)
End If
Es que me acaba de dar una pista un compañero del trabajo y me dijo que era parecido a lo que yo hice en "insertar y añadir" y lo he puesto mas o menos asi, si no lo entiendes ponme tu un codigo o algo de como lo harias porque es que me estoy estresando y creo que tu tambien xd.
Bueno y ahora te pongo el codigo de como lo llevo, ahora mismo esta 1/5 echo porque si pongo la provincia "Madrid" me sale una ciudad pero solo una, y si selecciono otra (aunque tenga datos) me marca el error (***): El valor EOF es true o el actual registro se elimino, la operacion solicitada requiere un registro actual"
Código vb:
Ver originalPrivate Sub Combo2_Click()
Dim idprovincia As Long
Set cnPrueba = New Connection
'Establecer sus propiedades
With cnPrueba
.Provider = "Microsoft.Jet.oledb.4.0"
.ConnectionString = "prueba.mdb"
End With
cnPrueba.Open
'Crear un conjunto de registros desde la tabla Ciudad2
Set rsCiudad2 = New Recordset
'Establecer sus propiedades
With rsCiudad2
.CursorLocation = adUseClient
.Open "select idprovincia from ciudad2 where ciudad = '" & Combo2.Text & "'", cnPrueba, adOpenDynamic, adLockOptimistic
End With
'Añadimos la tabla de ciudad2 al combo1
If Not rsCiudad2.EOF() Then
idprovincia = rsCiudad2.Fields(0)
End If
rsCiudad2.Close
rsCiudad2.Open "select * from ciudad2 where idprovincia=" & idprovincia & "", cnPrueba, adOpenDynamic, adLockOptimistic
Combo1.AddItem rsCiudad2!ciudad
rsCiudad2.MoveNext
End Sub
saludos y perdon por estresarte
pd: Una cosa a los comentarios si ves que no coinciden no les hagas caso porque se me olvidan borrarlos y hasta que lo termino no pongo los nuevo