Visual Basic - CONSULTA ENTRE FECHAS

Life is soft - evento anual de software empresarial
 
Vista:

CONSULTA ENTRE FECHAS

Publicado por geni (5 intervenciones) el 22/02/2008 13:34:02
Hola,

Necesito realizar una consulta entre fechas, pero no soy capaz.
1º la BDD es Acceso y el campo fecha se creo en su momento como texto.
2º utilizo dos campos textos para comparar entrre fecha 1 y fecha 2.

las consulta son:


sbuscar.sql = "Select * from XXXX where [fechacomienzo] >= # " & Format(Text1.Text, "dd/mm/yyyy") & " # and [fechacomienzo] <=# " & Format(Text2.Text, "dd/mm/yyyy") & " # ORDER BY fechacomienzo desc"


sbuscar.sql = "Select * from XXXXXX where fechacomienzo Between '" & Text1.Text & "' and '" & Text2.Text & "'order by fechacomienzo desc"

En ambos casos, si les digo que busque entre 01/01/2008 y el 15/01/2008, encuentra los días del 1-15, pero de todos los meses y todos los años.

Me podeis ayudar?

Un saludo
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

se me olvidaba

Publicado por geni (5 intervenciones) el 22/02/2008 13:38:44
Los datos de campo fechacomienzo se guardan con formato dd/mm/yyyy, pero texto.

Gracias
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

RE:CONSULTA ENTRE FECHAS

Publicado por Belen (2 intervenciones) el 24/02/2008 23:10:01
En lo que unicamente te puedi aydar es que en la segunda opcion hay mas equis que en la prinera

intenta coordinar la equis y aver si asi funca.
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

debe funcionar

Publicado por ED (70 intervenciones) el 25/02/2008 01:32:43
prueba asi:

" Select * from XXXXXX where (((fecha) >= #" & Format(txtDesde.Text, "MM/DD/YYYY") & "# AND (fecha) <= #" & Format(txtHasta.Text, "MM/DD/YYYY") & "#))"

en caso de que no funcione aplica la funcion Format() al campo fechacomienzo de la base de datos, suerte.
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

RE:debe funcionar

Publicado por geni (5 intervenciones) el 25/02/2008 11:36:34
Hola ED, gracias por contestar

No funciona... me muestra los mismos registros que las otras dos.

Incluso añadiendo cdate, format al principio "mm/dd/yyyy". Siempre muestra los mismos registros.

sbuscar.sql = " Select * from XXXX where fecha >= #" & CDate(Format(Text1.Text, "MM/DD/YYYY")) & "# AND (fecha) <= #" & CDate(Format(Text2.Text, "MM/DD/YYYY")) & "# order by fechao desc"

sbuscar.sql = " Select * from XXXX where fecha >= #" & CDate(Format(Text1.Text, "MM/DD/YYYY")) & "# AND (fecha) <= #" & CDate(Format(Text2.Text, "MM/DD/YYYY")) & "# order by fecha desc"

sbuscar.sql = " Select * from XXXX where format(fecha, 'mm/dd/yyyy') >= #" & CDate(Format(Text1.Text, "mm/dd/YYYY")) & "# AND (fecha) <= #" & CDate(Format(Text2.Text, "mm/dd/YYYY")) & "# order by fecha desc"

Se te ocurre alguna otra solución?

Un saludo,
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

RE:debe funcionar

Publicado por daniel (145 intervenciones) el 25/02/2008 18:08:39
le podes aplicar el formato a la tabla con la que trabajas y a la fecha en access sería asi. tendrias que fijarte despues en la base que uses para aplicar el formato necesario
SELECT Tabla1.fecha
FROM Tabla1
WHERE (((CDate([tabla1].[fecha]))>=CDate("01/01/2005") And CDate([tabla1].[fecha])<=CDate("15/06/2005")));
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

RE:debe funcionar

Publicado por geni (5 intervenciones) el 26/02/2008 17:18:40
gracias por contestar Daniel : )

tampoco funciona.....

voy saltando de error en error 3061, 3464, 424, 3219...

no se me ocurre que más puedo hacer..
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

RE:debe funcionar

Publicado por smokalot (203 intervenciones) el 27/02/2008 15:10:37
WHERE # fh_ini # between # fh_fin #...
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

RE:debe funcionar

Publicado por daniel (145 intervenciones) el 27/02/2008 16:20:05
fijate a ver si te ayuda
Saludos
http://support.microsoft.com/kb/105171/es
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

RE:debe funcionar

Publicado por fede (189 intervenciones) el 26/02/2008 19:34:33
vos decias que el formato de la fecha es texto en la bd no. entonces filtrala como tal osea:
sbuscar.sql = " Select * from XXXX where fecha= ' " & Text1.Text & " ' and fecha= ' " & Text2.Text & " '
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

RE:CONSULTA ENTRE FECHAS

Publicado por daniel (145 intervenciones) el 27/02/2008 16:22:53
o en este otro link
http://support.microsoft.com/kb/210244/es
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

RE:CONSULTA ENTRE FECHAS

Publicado por yessica (1 intervención) el 26/05/2008 16:08:29
Hola tengo la solucion a esa respuesta... si alguien esta interesado comunicarse conmigo a mi correo
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