Avatar billede mrjowns Novice
17. maj 2003 - 18:22 Der er 9 kommentarer og
1 løsning

CDate (Type mismatch) spørgsmål....

Jeg får denne dato fra en e-mail: Sat, 17 May 2003 18:01:10 +0200

Og har denne funktion til at lave den til en rigtig dato:

Function ConvertPop3Date(sDate)
Dim aDates, sDay, sMonth, sYear, sTime
aDates = Split(sDate, " ")
sMonth = aDates(2)
sDay = CInt(aDates(1))
sYear = CInt(aDates(3))
sTime = aDates(4)
ConvertPop3Date = CDate(sMonth & " " & sDay & ", " & sYear)
End Function

Men af mystiske årsager virker det ikke mere. Den fejler i næst-nederste linie i funktionen hvor CDate bruges.

Kan nogen hjælpe?
Avatar billede boris Mester
17. maj 2003 - 18:32 #1
Hvis du har en variabel med gyldig dato, så kan du sige:
= Month(variabel) & " " & Day(variabel) & " " & Year(variabel)

Osv.
Avatar billede mrjowns Novice
17. maj 2003 - 18:38 #2
Men jeg skal have løst det med min funktion - jeg gør følgende:

strMsgDate: Sat, 17 May 2003 18:01:10 +0200
postdate = ConvertPop3Date(strMsgDate)

Hvorfor virker min funktion ikke?
Avatar billede boris Mester
17. maj 2003 - 19:07 #3
Prøv at fjerne kommaet i CDate(......", "
Avatar billede hossein Nybegynder
17. maj 2003 - 19:19 #4
Det kan ikke lade sige gøre, nu skal jeg spise aftens mad, mor kalder, men sdate er din variable den skal ikke indgå i funktionen.
Avatar billede ellebaek Nybegynder
17. maj 2003 - 19:19 #5
Function ConvertPop3Date(sDate)
Dim aDates, sDay, sMonth, sYear, sTime
aDates = Split(sDate, " ")
sMonth = aDates(2)
sDay = CInt(aDates(1))
sYear = CInt(aDates(3))
sTime = aDates(4)
ConvertPop3Date = sMonth & " " & sDay & ", " & sYear
End Function
Avatar billede ellebaek Nybegynder
17. maj 2003 - 19:23 #6
ups...!
Se lige bort fra det jeg lige skrev...!
Avatar billede ellebaek Nybegynder
17. maj 2003 - 19:40 #7
Function ConvertPop3Date(sDate)
Dim aDates, sDay, sMonth, sYear, sTime
aDates = Split(sDate, " ")
sMonth = aDates(2)

if sMonth = "January" then
sMonth = "1"
elseif sMonth = "February" then
sMonth = "2"
elseif sMonth = "March" then
sMonth = "3"
elseif sMonth = "April" then
sMonth = "4"
elseif sMonth = "May" then
sMonth = "5"
elseif sMonth = "June" then
sMonth = "6"
elseif sMonth = "July" then
sMonth = "7"
elseif sMonth = "August" then
sMonth = "8"
elseif sMonth = "September" then
sMonth = "9"
elseif sMonth = "October" then
sMonth = "10"
elseif sMonth = "November" then
sMonth = "11"
elseif sMonth = "December" then
sMonth = "12"
end if



sDay = CInt(aDates(1))
sYear = CInt(aDates(3))
sTime = aDates(4)
ConvertPop3Date = sMonth & "/" & sDay & "/" & sYear
End Function

Denne funktion virker i hvert fald på min computer...
Avatar billede ellebaek Nybegynder
17. maj 2003 - 19:44 #8
og så prøver vi lige en sidste gang...
Function ConvertPop3Date(sDate)
Dim aDates, sDay, sMonth, sYear, sTime
aDates = Split(sDate, " ")
sMonth = aDates(2)

if sMonth = "January" then
sMonth = "1"
elseif sMonth = "February" then
sMonth = "2"
elseif sMonth = "March" then
sMonth = "3"
elseif sMonth = "April" then
sMonth = "4"
elseif sMonth = "May" then
sMonth = "5"
elseif sMonth = "June" then
sMonth = "6"
elseif sMonth = "July" then
sMonth = "7"
elseif sMonth = "August" then
sMonth = "8"
elseif sMonth = "September" then
sMonth = "9"
elseif sMonth = "October" then
sMonth = "10"
elseif sMonth = "November" then
sMonth = "11"
elseif sMonth = "December" then
sMonth = "12"
end if



sDay = CInt(aDates(1))
sYear = CInt(aDates(3))
sTime = aDates(4)
ConvertPop3Date = CDate(sMonth & "/" & sDay & "/" & sYear)
End Function
Avatar billede mrjowns Novice
17. maj 2003 - 19:47 #9
Hej ellebaek > Det ser ud til at virke! ...og pointene er selvfølgelig dine! Tak for hjælpen!
Avatar billede ellebaek Nybegynder
17. maj 2003 - 19:48 #10
selv tak...
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
Kurser inden for grundlæggende programmering

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