Avatar billede celal Nybegynder
12. marts 2009 - 08:24 Der er 10 kommentarer og
1 løsning

Format dato til at finde bestemt dato

Jeg har et dato felt som brugeren indtaster, som så skal konvereter feltet til en betalings dato løbende mdr 10 dage. Eks. faktura datoen 18-06-2009 bliver indtastet, belaingsdatoen skal så være 10-07-2009, da det skal betales løbende 10 dage. Nogen som har en simpel måde at formatere faktura datoen til betalingsdatoen?
Avatar billede mugs Novice
12. marts 2009 - 08:40 #1
Du bør ikke ændre fakturadatoen, den er jo en betydende faktor til posten.

I stedet kan du i en forespørgsel anvende funktionen DateAdd, som lægger et bestemt antal dage til en anden dato. Denne f.eks. lægger 30 dage til feltet fakturadato:

Udtryk1: DateAdd("d";30;[fakturadato])

Jeg har læst, at du vil have sidste dag i fakturadato + 10 dage. Der findes en funktion der finder den sidste dato indenfor aktuel måed. Den er i VBA, om den findes i SQL er jeg ikke klar over. Jeg prøver lige at finde noget om det.
Avatar billede celal Nybegynder
12. marts 2009 - 08:45 #2
DateAdd("d";30;[fakturadato]), kan jeg desværre ikke bruge, da den bare tilføjer 30 dage til fakturadatoen. Jeg bruger bruge funktionen i VBA.
Avatar billede mugs Novice
12. marts 2009 - 08:48 #3
Avatar billede mugs Novice
12. marts 2009 - 08:51 #4
Avatar billede mugs Novice
12. marts 2009 - 08:52 #5
Avatar billede celal Nybegynder
12. marts 2009 - 13:12 #7
Tak for hjælpen mugs
Avatar billede mugs Novice
12. marts 2009 - 14:21 #8
Selv tak - Og tak for point. Hvad brugte du?
Avatar billede mugs Novice
12. marts 2009 - 14:22 #9
Nå - Jeg ser nu, at du endnu ikke har fået det løst.
Avatar billede mugs Novice
12. marts 2009 - 16:23 #10
Den havde gemt sig godt, indsæt denne i et modul og overfør feltet fakturadato fra formularen:

Function LastOfMonth(fakturadato)
LastOfMonth = DateSerial(Year(fakturadato), Month(fakturadato) + 1, 1) + 9
MsgBox LastOfMonth
End Function
Avatar billede mugs Novice
15. marts 2009 - 20:29 #11
Funktionen skal jo nok sende resultatet til et felt i en formular. Her sendes resultatet til feltet Tekst5 i formularen frm1. funktionen modtager variablen falturadato fra formularen:

Function payday(fakturadato)
Dim ctl As Control
payday = DateSerial(Year(fakturadato), Month(fakturadato) + 1, 1) + 9
MsgBox payday
Set ctl = Forms![frm1].Controls![Tekst5]
ctl = payday
End Function

Kald funktionen med denne, der sender variablen fakturadato til funktionen:

Private Sub fakturadato_BeforeUpdate(Cancel As Integer)
payday fakturadato
End Sub
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