Busqueda erronea
Publicado por jes (11 intervenciones) el 05/10/2004 08:41:14
En que falla este código si hace una busqueda entre 2 números (100-2004 y 300-2004) y el reusltado es 169 y no el correcto (200).
GRacias.
Private Sub Comando35_Click()
Dim BASE As Database
Dim REC, REC1 As Recordset
Dim NIINICIAL, nfinal As String
Dim t, Tinicio, tfinal As Long
Set BASE = CurrentDb
Set REC = BASE.OpenRecordset("datos")
Set REC1 = BASE.OpenRecordset("TABLAPARAINFORME")
RII.SetFocus
NIINICIAL = RII.Text
RFF.SetFocus
nfinal = RFF.Text
Tinicio = 0
tfinal = 0
t = 0
While Not REC1.EOF
REC1.Delete
REC1.MoveNext
Wend
While Not REC.EOF
If REC.Fields(1).Value = NIINICIAL Then
Tinicio = REC.Fields(0).Value
End If
If REC.Fields(1).Value = nfinal Then
tfinal = REC.Fields(0).Value
End If
REC.MoveNext
Wend
REC.MoveFirst
While REC.Fields(0).Value < Tinicio
REC.MoveNext
Wend
While tfinal > REC.Fields(0).Value
t = t + 1
REC1.AddNew
REC1.Fields(0).Value = REC.Fields(0).Value
REC1.Fields(1).Value = REC.Fields(1).Value
REC1.Fields(2).Value = REC.Fields(2).Value
REC1.Fields(3).Value = REC.Fields(3).Value
REC1.Fields(4).Value = REC.Fields(4).Value
REC1.Fields(5).Value = REC.Fields(5).Value
REC1.Update
REC.MoveNext
Wend
REC.Close
REC1.Close
END SUB
GRacias.
Private Sub Comando35_Click()
Dim BASE As Database
Dim REC, REC1 As Recordset
Dim NIINICIAL, nfinal As String
Dim t, Tinicio, tfinal As Long
Set BASE = CurrentDb
Set REC = BASE.OpenRecordset("datos")
Set REC1 = BASE.OpenRecordset("TABLAPARAINFORME")
RII.SetFocus
NIINICIAL = RII.Text
RFF.SetFocus
nfinal = RFF.Text
Tinicio = 0
tfinal = 0
t = 0
While Not REC1.EOF
REC1.Delete
REC1.MoveNext
Wend
While Not REC.EOF
If REC.Fields(1).Value = NIINICIAL Then
Tinicio = REC.Fields(0).Value
End If
If REC.Fields(1).Value = nfinal Then
tfinal = REC.Fields(0).Value
End If
REC.MoveNext
Wend
REC.MoveFirst
While REC.Fields(0).Value < Tinicio
REC.MoveNext
Wend
While tfinal > REC.Fields(0).Value
t = t + 1
REC1.AddNew
REC1.Fields(0).Value = REC.Fields(0).Value
REC1.Fields(1).Value = REC.Fields(1).Value
REC1.Fields(2).Value = REC.Fields(2).Value
REC1.Fields(3).Value = REC.Fields(3).Value
REC1.Fields(4).Value = REC.Fields(4).Value
REC1.Fields(5).Value = REC.Fields(5).Value
REC1.Update
REC.MoveNext
Wend
REC.Close
REC1.Close
END SUB
Valora esta pregunta


0