Programación General > Visual Basic 6.0 e inferiores

 Problemas Con Tabla De Datos

(1/1)

jhonilson:
<_< Estoy accediendo a una tabla en access que yo mismo cree, y he descubierto que access me a modificado el orden de los registros en esta.
   Yo introduje los datos de mayor a menor, y access me los revolvio todos. Para mi es muy importante que esten ordenados, ya que yo necesito encontrar los datos anterior y posterior al valor que estoy buscando. Por ejemplo si tengo la siguinte tabla:

1
2
3
4
5
Entonces mando al programa a que busque el valor de 2.5, como este valor no esta en tabla el debe mandarme los valores extremos, osea, 2 y 3. Aqui les pongo un pedazo del codigo que estoy utilizando para esto.

   Private Sub Command2_Click()
    Dim SearchCriteria
    RAN = (Text7.Text + 273.15) * 1.8
    SearchCriteria = RAN
    menor = SearchCriteria
    igual = SearchCriteria
    If Trim$(SearchCriteria) <> "" Then
      SearchCriteria = "TEMPERATURA> '" + SearchCriteria + "'"
       menor = "TEMPERATURA< '" + menor + "'"
        igual = "TEMPERATURA= '" + igual + "'"
      Data1.Recordset.FindFirst SearchCriteria
      Data3.Recordset.FindLast menor
        Data4.Recordset.FindFirst igual
        If Text5.Text <> SearchCriteria Then
            Text5.Text = RAN
            Text6.Text = ""
        End If
        t3 = Text2.Text
        t1 = Text4.Text
        h3 = Text1.Text
        h1 = Text3.Text
        t2 = Text5.Text
        pr1 = Text8.Text
        pr3 = Text10.Text
        h2 = ((h3 - h1) / (t3 - t1)) * (t2 - t1) + h1
        pr2 = ((pr3 - pr1) / (t3 - t1)) * (t2 - t1) + pr1
        Label2.Caption = h2
        Text6.Text = h2
        Text9.Text = pr2
    End If

Brroz:
Sin entrar en consideraciones de lo que hace el código que posteas (casi mejor que no) te diría que ordenes tu el recorset mediante la correspondiente cláusula ORDER BY.


--- Citar ---
RAN = (Text7.Text + 273.15) * 1.8

SearchCriteria = "TEMPERATURA> '" + SearchCriteria + "'"


--- Fin de la cita ---
Es que no pude aguantar...  Este tipo de concatenaciones son la bomba. Te recomiendo usar + como operador y & como carácter para concatenar strings. Otra cosa, ¿el campo TEMPERATURA es un string? Esto me hace pensar otra cosa: ¿no dirás que los registros están desordenados porque te aparecen en una secuencia de este estilo?:
1
10
11
2
3
4
40
5
51
6

Adeus.

jhonilson:
Dejame revisar lo que dices, el campo si es cierto que lo configure como texto, pero eso lo hice porque me daba problemas a la hora de buscar registros en campos configurados como numero.
   De todas maneras dejame intentar de nuevo.

    MUCHAS GRACIAS :)

Navegación

[0] Índice de Mensajes

Ir a la versión completa