cdate fra yymmdd til ddmmyy i en forspørgsel
Har en forespørgsel hvor et felts indhold er yymmdd (nogen gange ymmdd)
dette vil jeg gerne have vist korrekt i en formular.
Har prøvet med at skrive i et nyt felt i en forespørgsel:
Udtryk1: cdate([felt1], "ddmmyy") men her vil den ikke acceptere kommaet.
samme resultat med:
Udtryk1: format(cdate([felt1], "yymmdd")"ddmmyy")
Hvis jeg bare skriver cdate([felt1]) så skriver eks 1.nov 2228, dvs den kan ikke lige finde ud af at tallet står omvendt med år først.
Skrevet tor. d. 19. januar 2012 kl. 14:23:16| #1
Skrevet tor. d. 19. januar 2012 kl. 14:25:22| #2
Skrevet tor. d. 19. januar 2012 kl. 14:26:12| #3
det er en access 2003 hvis det har noget specielt at sige
Skrevet tor. d. 19. januar 2012 kl. 14:28:29| #4
Eller faktisk:
Udtryk1: CDate([felt1]; "yymmdd")
kommer nu med fejlen
"det indtastede udtryk indeholder en funktion med forkert antal argumenter"
Skrevet tor. d. 19. januar 2012 kl. 14:41:40| #5
tallet i felt1 er 120116 (16-12-2012)
format([felt1]; "yymmdd")
bliver til 281111
format([felt1]; "ddmmyy")
bliver til 111128
Cdate([felt1])
bliver til 11-11-2228
Cdate([felt1]; "ddmmyy")
vil ikke accepteres af programmet
Skrevet tor. d. 19. januar 2012 kl. 15:28:22| #6
iff(len([felt1])=5;right([felt1],2) & "-" & mid([felt1];2;2) & "201" & left([felt1];1);right([felt1],2) & "-" & mid([felt1];3;2) & "20" & left([felt1];2))
...eller noget i den retning!~)
Skrevet tor. d. 19. januar 2012 kl. 15:29:11| #7
eller rettere..
iff(len([felt1])=5;right([felt1],2) & "-" & mid([felt1];2;2) & "-201" & left([felt1];1);right([felt1],2) & "-" & mid([felt1];3;2) & "-20" & left([felt1];2))
Skrevet fre. d. 20. januar 2012 kl. 12:11:03| #8
spg
den vil ikke acceptere kommaet i ([felt1],2)
så lavede jeg det om til ;
men så kommer fejlen "der er en ikke-defineret funktion "iff" i udtrykket.
nogen ideer
Skrevet fre. d. 20. januar 2012 kl. 12:17:14| #9
hvis jeg har forstået formlen, så er det en if then else sætning.
mangler der så ik noget halvvejs i formlen?
Skrevet fre. d. 20. januar 2012 kl. 12:20:50| #10
næ her tog jeg fejl
iif ( condition, value_if_true, value_if_false )
Skrevet fre. d. 20. januar 2012 kl. 12:26:42| #11
Stadig fejlen "der er en ikke-defineret funktion "iff" i udtrykket.
men har ændret en bitte smule i den, bla -201 til -200 da når der er 5 tal så er det fordi der foran skulle have været et 0 og ikke et 1.
Og så ændret , til ;
iff(len([felt1])=5;right([felt1];2) & "-" & mid([felt1];2;2) & "-200" & left([felt1];1);right([felt1];2) & "-" & mid([felt1];3;2) & "-20" & left([felt1];2))
Skrevet fre. d. 20. januar 2012 kl. 12:56:56| #12
Hvis jeg kun bruger en af dem så virker det fint, bort set fra at den så ikke kan kende forskel fra 51112 051112
Skrevet fre. d. 20. januar 2012 kl. 17:01:11| #13
undskyld jeg ikke har kommenteret, men jeg staar paa hovedet i et par massive projekter og er paa vej ud af doeren...
Jeg kan ikke naa at rette formlen, men du kunne koere dem en af gangen, som en update forespoergsel, saa du en gang for alle har et rent og formateret datasaet!~)
Skrevet man. d. 23. januar 2012 kl. 08:11:50| #14
Det helt fint, kender alt til at have lige lovlig mange ting i ilden.
Du har hjulpet mig en stor del af vejen så jeg prøver og ser om jeg finder ud af resten.
Skrevet man. d. 23. januar 2012 kl. 11:27:31| #15
Det er en tyrkfejl. "iff" skal være "iif"
Skrevet man. d. 23. januar 2012 kl. 12:59:20| #16
fdata, ændret fra iff til iif så fungerede det perfekt.
Skrevet man. d. 23. januar 2012 kl. 12:59:48| #17
svar og i begge får point
Skrevet man. d. 23. januar 2012 kl. 17:40:41| #18
Jeg behøver ikke point for så lille en indsats. spg har jo gjort al arbejdet. Men tak for tilbudet ;O)
Skrevet man. d. 23. januar 2012 kl. 22:57:25| #19
Godt at høre, at du fik det til at virke!~)
fdata>godt spottet, takker...
Skrevet tir. d. 24. januar 2012 kl. 13:25:44| #20
Resultatet blev således at den også checker om der står 0, ved at tjekke efter længde 1:
IIf(Len([felt1])=1;"0";IIf(Len([felt1])=5;Right([felt1];2) & "-" & Mid([felt1];2;2) & "-200" & Left([felt1];1);Right([felt1];2) & "-" & Mid([felt1];3;2) & "-20" & Left([felt1];2)))