Avatar billede Slettet bruger
15. januar 2008 - 15:10 Der er 23 kommentarer og
1 løsning

VBA Dato + X sekunder

Hej alle

Så er det blevet tid til endnu et spørgsmål.
I DB2 kan man tage et vilkårligt timestamp og tillægge X antal sekunder ved hjælp af TIMESTAMP('1970-01-01') + X SECONDS.

Er dette muligt i Access? Jeg sidder nemlig med en tabel der indeholder login timestamps i sekunder, og skal have dem konverteret i Access til et dd/mm/yyy hh:mm:ss format.

På forhånd tak
Avatar billede Slettet bruger
15. januar 2008 - 15:12 #1
Sekunderne skal tælles fra ovennævnte dato (01-01-1970)
Avatar billede jensen363 Forsker
15. januar 2008 - 15:12 #2
I Access man du benytte syntaxen Now() eller Date()
Avatar billede Slettet bruger
15. januar 2008 - 15:12 #3
eller.... lægges til ovennævnte dato, sorry
Avatar billede jensen363 Forsker
15. januar 2008 - 15:16 #4
Format(#01-01-1970#;"dd-mm-yyyy hh:nn:ss") + sekunder
Avatar billede Slettet bruger
15. januar 2008 - 15:18 #5
Løste det selv :)

Login: DateSerial(1970,1,1)+([root_haglog]![login]/86400)
Avatar billede jensen363 Forsker
15. januar 2008 - 15:19 #6
Format(#01-01-1970# & [DineSekunder];"dd-mm-yyyy hh:nn:ss")
Avatar billede Slettet bruger
15. januar 2008 - 15:21 #7
Format virker ikke, det er ikke muligt at lægge sekunder til som sådan, så vidt jeg kunne se.
Avatar billede terry Ekspert
15. januar 2008 - 15:22 #8
"...Jeg sidder nemlig med en tabel der indeholder login timestamps i sekunder"!!!

is the timestamp a valid date field or is it a number containing seconds?

If its a valid date then you should be able to use the dateAdd function

DateAdd("s", X, [TimeStampField])
Avatar billede Slettet bruger
15. januar 2008 - 15:23 #9
Det er et Integer felt indeholdende sekunder, tror min løsning er den eneste mulige ud at skulle ud i noget helt ekstremt.
Avatar billede Slettet bruger
15. januar 2008 - 15:24 #10
uden at skulle*
Avatar billede terry Ekspert
15. januar 2008 - 15:27 #11
Try and explain in detail what you have and what you want, I'm a bit confused.
Avatar billede terry Ekspert
15. januar 2008 - 15:29 #12
do you jut swant to add X number of secunds to the date '1970-01-01'? and if so is it the first second of that date ('1970-01-01 00:00:00')?
Avatar billede Slettet bruger
15. januar 2008 - 15:30 #13
Jeg har en tabel indeholdende en kolonne med login tidspunkt i sekunder (Integer).
Sekunderne skal udregnes fra 1970-01-01. Dvs. X sekunder skal lægges til 1970-01-01 00:00:00

Som jeg skrev tidligere, så tror jeg at denne løsning er den nemmeste:

DateSerial(1970,1,1)+([Table]![Column]/86400)
Avatar billede Slettet bruger
15. januar 2008 - 15:44 #14
Opdatering til ovenstående....

Hvis jeg har 2 kolonner med Login og Logout tider, hvordan finder jeg så ud af hvor lang tid vedkommende har været logget ind (hvis du kigger på logout vs. login)
Avatar billede Slettet bruger
15. januar 2008 - 15:45 #15
Login og Logout er valide timestamp felter
Avatar billede terry Ekspert
15. januar 2008 - 17:08 #16
havent you found a solution yourself?
Avatar billede Slettet bruger
15. januar 2008 - 19:38 #17
To the first problem yeah, but the last one is kind of a follow up question, which I haven't solved yet :)
Avatar billede terry Ekspert
15. januar 2008 - 19:44 #18
Is the login and logout in the same record?
Avatar billede Slettet bruger
15. januar 2008 - 20:04 #19
Yep, Table looks like this:

AGENT, LOGIN, LOGOUT
Avatar billede terry Ekspert
15. januar 2008 - 20:13 #20
Well to see the time logged in in seconds you can use something like this

DateDiff("s",DateSerial(1970,1,1)+([Login]/86400), DateSerial(1970,1,1)+([Logout]/86400))

and if you want it in hh:mm:ss then you have to use a function something like this one http://www.freevbcode.com/ShowCode.Asp?ID=85
Avatar billede Slettet bruger
15. januar 2008 - 20:26 #21
Very nice, that's exactly what I need. Will you drop an answer for points terry?
Avatar billede terry Ekspert
15. januar 2008 - 20:38 #22
yeps.
You do know that you can call the function from your query if you need to?
Avatar billede terry Ekspert
15. januar 2008 - 20:38 #23
!
Avatar billede Slettet bruger
15. januar 2008 - 20:38 #24
Yeah, everything is solved now :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester