Visual Basic para Aplicaciones - Pregunta

Life is soft - evento anual de software empresarial
 
Vista:

Pregunta

Publicado por Alejandro (2 intervenciones) el 25/08/2008 16:35:41
Hola que tal.

Tengo una pequeña duda.
Estoy tratando de obtener ciertos valores de un campo en una tabla desde acces con vba y estoy haciendo el codigo desde un modulo pero siempre que ejecuto el modulo para hacer una prueva solo se va al siguiente record y se sale del bucle en que lo tengo declarado:
El codigo que estoy utilizando es el siguiente:

Public Function Prueva()
Dim Db As ADODB.Connection
Dim RS As ADODB.Recordset
Dim Contador As Long

Set Db = Nothing
Set RS = Nothing
Set Db = CurrentProject.Connection
Set RS = New ADODB.Recordset

RS.Open ("Select TD from M"), Db
Contador = 0

If RS("TD").Value = 1 Then
RS.MoveNext
Do Until RS("TD").Value = 1
If RS("TD").Value = 2 Then
Contador = Contador + 1
RS.MoveNext
End If
Loop
MsgBox Contador
End If

Set RS = Nothing
Db.Close
End Function

Si alguen pe pudiese explicar porque es que se sale del bucle esta funcion se lo agradeceria mucho.

Saludos!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Pregunta

Publicado por Jorge Morales (18 intervenciones) el 25/08/2008 20:31:04
Saludos Alejandro, fijate que en la condición estas indicando que se haga hasta que RS("TD").Value = 1 y puede ser que el siguiente registro

If RS("TD").Value = 1 Then
RS.MoveNext

tenga valor 1, por lo tanto se sale del bucle, de hecho ni siquiera entra en el bucle.

Espero te sea de ayuda.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar