---
title: "Datumfråga: Konvertera till AM/PM."
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/160695-datumfråga-konvertera-till-am-pm"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "danis"
published: "2007-05-25T11:00:00.000Z"
updated: "2007-05-25T12:09:43.000Z"
replies: 10
views: 766
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/160695-datumfråga-konvertera-till-am-pm"
---

# Datumfråga: Konvertera till AM/PM.

## #1 — danis, 2007-05-25T11:00Z

Hej!

Har ett litet problem, kanske ni kan hjälpa mig.

Jag vill konvertera ett vanligt (svenskt) datum, så att resultatet blir ett amerikanskt/engelskt, med PM/AM.

Exempelvis att "2007-05-25 13:55:00" blir "5/25/2007 1:55:00 PM".

Jag vill inte ändra session lcid, alla datum är redan sparade i databasen. Det är en svensk/engelsk sajt, med samma databas, allt sparas med svensk tid i databasen.

Någon som har någon idé? Kanske en länk?

Väldigt tacksam om någon vill hjälpa mig lite.:)

Mvh 
Daniel

Permalänk: https://www.webforum.nu/p/160695

## #2 — @nders, 2007-05-25T11:21Z

> Jag vill inte ändra session lcid, alla datum är redan sparade i databasen.

Varför vill du inte ändra LCID? Det är ju alldeles ypperligt att använda för att se till att utskriften blir fin. Fortsätt att lagra i vettigt format (jag utgår ifrån att det är fält av vettig typ), och formatera vid utskriften.

Permalänk: https://www.webforum.nu/p/1980911

## #3 — danis, 2007-05-25T11:28Z

Det går tyvärr inte. Annars måste jag ha en funktion som konverterar till svenskt datum, det redan finns ca. 20-30 miljoner svenska datum sparade i databasen. Plus att jag måste bygga om en stor del av sajten.

Det jag måste ha är bara en funktion som konverterar ett svenskt datum till ett amerikanskt datum. Det är betydligt lättare, iallafall i mitt fall.

Permalänk: https://www.webforum.nu/p/1980917

## #4 — voigtann1, 2007-05-25T11:31Z

Det spelar väl ändå ingen roll? Om du har sparat som ett datum fält i din databas så kan du använda dig av LCID för utskrift resultatet.

Permalänk: https://www.webforum.nu/p/1980922

## #5 — @nders, 2007-05-25T11:33Z

> det redan finns ca. 20-30 miljoner svenska datum sparade i databasen.

Vad har det med saken att göra? Så länge du använt ett fält av datumtyp så är det "datum" som sparats, inte "svenska datum".

Permalänk: https://www.webforum.nu/p/1980923

## #6 — danis, 2007-05-25T11:37Z

Aja, det går iallafall inte. Men om någon har ett tips/länk på hur man konverterar till ett amerikanskt datum så får ni gärna hjälpa mig.:)

Permalänk: https://www.webforum.nu/p/1980928

## #7 — @nders, 2007-05-25T11:39Z

Varför går det inte?

Permalänk: https://www.webforum.nu/p/1980930

## #8 — danis, 2007-05-25T11:48Z

Tack för Era snabba svar, testar ett annat forum, med hopp om att man kanske får hjälp med det man behöver. Istället för en massa argument om varför jag ska byta LCID. Jag skrev klart och tydligt att jag INTE ville ändra LCID. Men men.

Alla sajtuppbyggnader är inte likadana, min är byggt på ett speciellt sätt. That's it. :-)

/D

Permalänk: https://www.webforum.nu/p/1980943

## #9 — @nders, 2007-05-25T11:54Z

Jag menar inte att vara otrevlig, faktum är bara att det enklaste sättet är att byta LCID (till exempel med setlocale()), göra sin utskrift och sedan byta tillbaka. 

Det är dock inte svårt för dig att göra en funktion för att omvandla. Använd bara funktionerna Year(), Month(), Day() osv, och bygg en ny datumsträng som ser ut som du vill.

edit: ett funktionsförslag, utan att byta LCID kan vara typ:

```
function foo(dDate)
     setlocale("en-us")
     sDate = Cstr(Cdate(dDate))
     setlocale("sv-se") ' har jag för mig är för svenska
     foo = sDate
end function
```

 (funktionen är dock väldigt otestad, men borde kunna fungera.)

mvh

Permalänk: https://www.webforum.nu/p/1980946

## #10 — voigtann1, 2007-05-25T11:57Z

> **danis skrev:**
>
> testar ett annat forum, med hopp om att man kanske får hjälp med det man behöver. Istället för en massa argument om varför jag ska byta LCID. Jag skrev klart och tydligt att jag INTE ville ändra LCID. Men men.

Få hjälp? Varför göra en funktion som gör detta redan med LCID, det kommer bli en onödig kod för något som redan finns. Men uppfinn hjulet igen.  Är det att du har sparat datumet som en sträng eller vad? Man kan inte hjälpa mer än vad man få av personen som frågar.

Om jag tänker tillbaka så har jag för mig att jag har gjort en sådan sak själv.

Kan ge tips:

```
Plocka ut allt: CDate(rs("datumet"))
Myday = day(CDate(rs("datumet")))
myMonth = day(CDate(rs("datumet")))
myYear = year(CDate(rs("datumet")))

Myhour = Hour(CDate(rs("datumet")))
If MyHour > 12 Then
  AmPm = "PM"
  MyHour = MyHour -12
Else
  AmPm = "AM"
End If
'... osv, sen bara bygg ihop strängen
newStr = Myday & "/" & myMonth  &"/" & myYear & " " & MyHour &....& AmPm
```

Något sånt.

Permalänk: https://www.webforum.nu/p/1980949

## #11 — danis, 2007-05-25T12:09Z

Nej, datumet sparat inte som en sträng. 

Tack så mycket för exemplet! (y) 

Mvh 
Daniel

Permalänk: https://www.webforum.nu/p/1980964

---

Tråden på webben: https://www.webforum.nu/amne/asp/160695-datumfråga-konvertera-till-am-pm
