Visual Basic - Fechas en Access

Life is soft - evento anual de software empresarial
 
Vista:

Fechas en Access

Publicado por Marco Contreras (13 intervenciones) el 03/07/2001 19:06:21
Hola!!!
Estoy haciendo un Select en access en donde me involucra fechas, pero tango problemas al traer los datos, pues me realiza el select en base a la configuracion regional de la pc.

Ejemplo:

Select * from TABLA Where CampoFecha = "fecha" (regularmente en formato dd/mm/yyyy ó mm/dd/yyyy ó yyyy/mm/dd)

Nota: el campo de acces es "Fecha/Hora"

Pero si los setings estan dd/mmm/aa o diferentes aunque existan registros no me los identifica.

¿¿¿que puedo hacer para formatear la fecha en access.???
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:Fechas en Access

Publicado por Vicky Castillo (17 intervenciones) el 03/07/2001 19:57:05
Aqui esta un ejemplo, de como puedes hacer el query con fechas, utilizando el string fecha pude eliminar ese problema del formato de la fecha:

Dim Fecha as string

Fecha = Format((Dtpicker1.value, "MM/DD/YYYY")

Set Rst = DbLicencias.OpenRecordset("Select * from Tabla where Fecha =#" & Fecha & "#")

Espero que te sirva

Saludos
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:Fechas en Access

Publicado por Marco Contreras (13 intervenciones) el 03/07/2001 20:11:39
Gracias Vero, pero con eso solo formateas la fecha en la cadena, pero si la fecha de los settings no es igual a "MM/DD/YYYY", no te trae los registro, pero mira lo que hice.

Con el Api;
Declare Function GetLocaleInfo Lib "kernel32" Alias "GetLocaleInfoA" (ByVal Locale As Long, ByVal LCType As Long, ByVal lpLCData As String, ByVal cchData As Long) As Long

me traigo primero el formato de la fecha de la PC aunque este en chino o maya, esot es:

If (GetLocaleInfo(LOCALE_USER_DEFAULT, 31, sBuffer, lBufferLen)) Then
FECHA= Left(sBuffer, InStr(sBuffer, Chr(0)) - 1)
Else
lblFechaSettings = ""
MsgBox "No se puedo obtener la información"
End If

y despues: lo que tu dices;

Set Rst = DbLicencias.OpenRecordset("Select * from Tabla where Fecha =#" & Fecha & "#")

SALUDOS

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