• Sábado 18 de Mayo de 2024, 17:08

Autor Tema:  Re: Consultar por fecha  (Leído 1641 veces)

becker24

  • Miembro activo
  • **
  • Mensajes: 44
    • Ver Perfil
    • http://members.tripod.cl/becker24
Re: Consultar por fecha
« en: Jueves 8 de Mayo de 2003, 16:36 »
0
Hola amigos, nuevamente tengo una duda, necesito arrojar en un list los datos que se encuentran dentro de un rango de fechas a traves de una consulta sql.   El codigo que tengo es el siguiente :

Dim base As Database
Dim rs As Recordset

Private Sub Command1_Click()
Set base = OpenDatabase("C:fecha97.mdb")
Set rs = base.OpenRecordset("select * from personal where fecha between #01/01/03# and #01/02/03#")
Do While Not rs.EOF
   List1.AddItem rs!rut & Space(2) & rs!nombre
   rs.MoveNext
Loop
End Sub

Este codigo resulta, pero lo que necesito es tomar las fechas de los texbox, no indicarselas por programa, si me pueden ayudar se los agradezco mucho,
Saludos Becker24:beer:

J.M.Movilla

  • Miembro MUY activo
  • ***
  • Mensajes: 427
    • Ver Perfil
Re: Consultar por fecha
« Respuesta #1 en: Jueves 8 de Mayo de 2003, 17:35 »
0
Hola, pues sustituye la SQL por:

Set rs = base.OpenRecordset("select * from personal where fecha between #" & Text1.Text & "# and #" & Text2.Text & "#")

Saludos y suerte

becker24

  • Miembro activo
  • **
  • Mensajes: 44
    • Ver Perfil
    • http://members.tripod.cl/becker24
Re: Consultar por fecha
« Respuesta #2 en: Jueves 8 de Mayo de 2003, 21:35 »
0
Hola J.M.Movilla, sabes el cambio que me dijiste que hiciera funciona, pero tengo un problema , al darle el rango el text2.text lo toma con un dia antes es decir, si quiero listar todo lo que este entre el 01.01.2003 al 10.01.2003, me lista lo que esta entre el 01.01.2003 al 09.01.2003, lo que necesito es que se incluya la ultima fecha que estoy dando en el text2.text.
Si puedes ayudarme te lo agradeceria, saludos, becker24 :beer:

J.M.Movilla

  • Miembro MUY activo
  • ***
  • Mensajes: 427
    • Ver Perfil
Re: Consultar por fecha
« Respuesta #3 en: Jueves 8 de Mayo de 2003, 23:58 »
0
¿Qué cosas tiene mi novio?, como diría la modistilla de la copla... A mí siempre me ha incluido ambas fechas, o séase, ambas inclusive...

pero si se empeña en recortarte el período, pues le dices:

Set rs = base.OpenRecordset("select * from personal where fecha between #" & Text1.Text & "# and #" & Text2.Text + 1 & "#")

No sé qué tipo de variable te está manejando el textbox; espero no te dé error de tipo de variable al sumarle un día

Saludos

becker24

  • Miembro activo
  • **
  • Mensajes: 44
    • Ver Perfil
    • http://members.tripod.cl/becker24
Re: Consultar por fecha
« Respuesta #4 en: Lunes 12 de Mayo de 2003, 05:08 »
0
Hola J.M., sabes sigo teniendo problemas para la busqueda entre fechas, seria posible y te lo pido humildemente que me enviaras algun ejemplo si es que lo tienes, te lo agradeceria mucho, de antemano muchas gracias por tu ayuda,
saludos Becker24:beer:

J.M.Movilla

  • Miembro MUY activo
  • ***
  • Mensajes: 427
    • Ver Perfil
Consultar por fecha
« Respuesta #5 en: Lunes 12 de Mayo de 2003, 09:07 »
0
Esta es la fórmula que yo utilizo sistemáticamente en mis programas cuando introduzco la fecha mediante un textbox, con garantía de que funciona perfectamente.
Ves que uso los clásicos >= y <= en vez de between; rs sería un recordset. db la database y Tabla1 la tabla...

    Set rs = db.OpenRecordset("SELECT * FROM Tabla1 " & _
        "WHERE Fecha >= DateValue(""" & txtFec1 & """) And Fecha <= DateValue(""" & txtFec2 & """) ORDER BY Fecha", dbOpenDynaset)

Adáptalo a tu forma de trabajar y espero que te funcione.