Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

convertir 8 digitos a fecha en formato hh:nn dd-mm

125 views
Skip to first unread message

arturo gangas

unread,
May 6, 2004, 4:31:08 PM5/6/04
to
hola muchachos
> quisiera me ayudaran a resolver el siguiente acertijo
> necesito convertir 8 digitos 19452104
> a un formato hora y fecha 19:45 21-04,
> pero no logro hacerlo, solicito entonces
> de vuestra sabiduria y experiencia informatica en access

ayer el amigo buho me dio la siguiente solucion pero no se
que tipo de campo debo tener fecha y hora, numero o texto
debido a que la informacion no es tipeada, y es ingresada por
un lector de codigos de barra

agradecere vuestra ayuda

Eduardo Olaz

unread,
May 6, 2004, 5:06:30 PM5/6/04
to
Esta función te devuelve una cadena como la que quieres, aunque le pases los
datos como string. Cosas de Visual Basic.

______________________________________

Public Function FormatoHoraFecha( _
ByVal HoraFecha As Long _
) As String

' 19452104 lo devuelve como 19:45 21-04
Dim strHora As String
Dim strMinuto As String
Dim strDia As String
Dim strMes As String
strHora = CStr(Int(HoraFecha / 1000000))
HoraFecha = HoraFecha Mod 1000000
strMinuto = CStr(Int(HoraFecha / 10000))
HoraFecha = HoraFecha Mod 10000
strDia = CStr(Int(HoraFecha / 100))
strMes = CStr(HoraFecha Mod 100)
FormatoHoraFecha = strHora & ":" & strMinuto _
& " " _
& strDia & "-" & strMes
End Function
______________________________________

Saludos desde la calle Estafeta de Pamplona

Eduardo Olaz
Microsoft [MVP] Access

eduardoALGARROBAolaz.net
ALGARROBA = @

"arturo gangas" <arturo...@terra.cl> escribió en el mensaje
news:56DC2455-1C7D-4F6D...@microsoft.com...

Búho

unread,
May 6, 2004, 6:29:27 PM5/6/04
to
Ayer te di esta respuesta, sin tener mas datos. Hoy ya añades algo mas de
informacion:
Hora = CDate(Mid(Numero, 1, 2) & ":" & Mid(Numero, 3, 2))
Fecha = CDate(Mid(Numero, 5, 2) & "-" & Mid(Numero, 7, 2))
Este codigo sigue siendo valido...pero¿Donde ponerle?¿Como utilizarle?


Si la informacion la lees desde un lector de codigo de barras, supongo que
se depositará en un campo de un formulario...¿No? (Si no no me explico donde
depositas la informacion leida)
Supongamos que es eso. Que es un lector conectado a un teclado y que con un
formulairo abierto y con el foco en un campo, ahí depositas la lectura.

Tampoco añades hoy mucha mas informacion si realmente en ese mismo
formulario debes tener UN campo o DOS. Un campo donde se depositara
Hora+Fecha o DOS campos donde se depositara Hora por un lado y fecha por
otro.
Incluso, no dices que a lo mejor no necesitas ningun campo más, pues el
resultado de la lectura del codigo de barras, lo quieres guardar
directamente en una tabla, sin ser visto en el formulario, a través de un
recordset o de una Sql Inser Into a la tabla.

Como ves, para una respuesta efectiva, se necesita ser muy claro en la
pregunta.

En cualquier caso, como no sé el escenario real, me le invento:

Private Sub TxtLectura_LostFocus()
TxtHora = CDate(Mid(TxtLectura, 1, 2) & ":" & Mid(TxtLectura, 3, 2))
TxtFecha = CDate(Mid(TxtLectura, 5, 2) & "-" & Mid(TxtLectura, 7, 2))
TexHoraFecha = CDate(Mid(TxtLectura, 1, 2) & ":" & Mid(TxtLectura, 3, _
2)) & " " & CDate(Mid(TxtLectura, 5, 2) & "-" & Mid(TxtLectura, 7, 2))
End Sub

Ahi te he puesto las dos posibilidades. TxtLectura es el campo donde se
deposita la lectura del codigo de barras.
En su evento, al perder el enfoque, coloco en
TxtHora=la hora
TxtFecha=la fecha
TxtHoraFecha= las dos cosas juntas

A partir de ahí...tu mismo
:-)
--

Saludos desde Valladolid
Francisco Javier García Aguado
buho...@mvp-access.com
---
http://www.mvp-access.com/
http://www.mvp-access.com/foro
http://groups.msn.com/Access2000VisualBasic/
---


"arturo gangas" <arturo...@terra.cl> escribió en el mensaje
news:56DC2455-1C7D-4F6D...@microsoft.com...


---
Mi antivirus te dice que no tengo virus (Al menos conocidos).
Saludos del Buho.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.677 / Virus Database: 439 - Release Date: 05/05/2004


Victor Delgadillo

unread,
May 7, 2004, 7:06:01 AM5/7/04
to
Francisco: Me parece que el codigo original "hhmmddmmaa" lo quiere
simplemente formatear "hh:mm dd/mm/aa". En el sentido puro de la solicitud:
convertir a formato fecha/hora (un numero doble) donde la parte entera es el
dia en julian y la decimal es la informacion de la hora:min:seg ??
Tanto la conversion que sugiere Eduardo con la funcion para generar una
cadena simple: hh:mm dd/mm/aa, no se puede guardar como formato fecha/hora
en Access.
Si Arturo indicara que lo desea almacenar como fecha/hora (formato Access:
MM/DD/AAAA HH:MM:SSS) o como cadena simple "HH:MM DD/MM/AA" ayudaria a una
solucion adecuada.

--
Victor Delgadillo [MVP Access]
Miami, Florida

Consultas al grupo, asi todos nos beneficiamos.

_
"Búho" <pacoQU...@nemo.es> wrote in message
news:#tENil7M...@TK2MSFTNGP12.phx.gbl...

Búho

unread,
May 7, 2004, 7:40:08 AM5/7/04
to
>Si Arturo indicara que lo desea almacenar como fecha/hora (formato Access:
>MM/DD/AAAA HH:MM:SSS) o como cadena simple "HH:MM DD/MM/AA" ayudaria a una
>solucion adecuada.
Jajaja, ya lo sé...y....mientras tanto...¿Que solucion damos?
Pues a falta de mas datos, ofrecemos la mejor solucion que podemos y creemos
que se adapte a su INCOMPLETA petición
Si no vuelve a preguntar es que posiblemente le sirvieran las respuestas.


--

"Victor Delgadillo" <victo...@NOSPAMyahoo.com> escribió en el mensaje
news:OgTsJNCN...@TK2MSFTNGP12.phx.gbl...


> Francisco: Me parece que el codigo original "hhmmddmmaa" lo quiere
> simplemente formatear "hh:mm dd/mm/aa". En el sentido puro de la
solicitud:
> convertir a formato fecha/hora (un numero doble) donde la parte entera es
el
> dia en julian y la decimal es la informacion de la hora:min:seg ??
> Tanto la conversion que sugiere Eduardo con la funcion para generar una
> cadena simple: hh:mm dd/mm/aa, no se puede guardar como formato fecha/hora
> en Access.
> Si Arturo indicara que lo desea almacenar como fecha/hora (formato Access:
> MM/DD/AAAA HH:MM:SSS) o como cadena simple "HH:MM DD/MM/AA" ayudaria a una

---


Mi antivirus te dice que no tengo virus (Al menos conocidos).
Saludos del Buho.
Checked by AVG anti-virus system (http://www.grisoft.com).

Version: 6.0.677 / Virus Database: 439 - Release Date: 04/05/2004


Victor Delgadillo

unread,
May 7, 2004, 12:40:22 PM5/7/04
to
Si Paco.... pero es que me llamo la atencion que mencionara especificamente
'fecha/hora' (nombre por el que se conoce en Access a los campos que
contienen los valores de fecha + hora), y no una cadena de adorno!

--
Victor Delgadillo [MVP Access]
Miami, Florida

Consultas al grupo, asi todos nos beneficiamos.

_
"Búho" <pacoQU...@nemo.es> wrote in message

news:uDrVJfCN...@TK2MSFTNGP11.phx.gbl...

0 new messages