---
title: "Datum - Variabel"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/11025-datum-variabel"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "mattiasnordin"
published: "2001-08-09T13:17:00.000Z"
updated: "2001-08-09T16:11:00.000Z"
replies: 19
views: 343
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/11025-datum-variabel"
---

# Datum - Variabel

## #1 — mattiasnordin, 2001-08-09T13:17Z

Jag har en variabel som är ett datum i formatet: 010808
Nu vill jag visa hur många dagar det är kvar till detta datum. Har dock inte hållt på mycket med datumdelen i VB-script ännu...

Om variabelns datum är 010810 och dagens datum är 010808 vill jag visa resultatet 2.

Säkert enkelt för er som kan. Själv går det trögt med trial n error varianten...

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

## #2 — ekke_t, 2001-08-09T13:30Z

Gör först om datumen till ett bättre format... yyyy-mm-dd är bra.. sen kör du denna kod...

```

datediff("d","2001-08-08","2001-08-10")
```

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

## #3 — mattiasnordin, 2001-08-09T13:40Z

Jag får "Cannot use parentheses when calling a Sub" när jag provar datediff("d","2001-08-08","2001-08-10")

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

## #4 — Brimba, 2001-08-09T13:41Z

Dim a
a = datediff("d","2001-08-08","2001-08-10")

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

## #5 — mattiasnordin, 2001-08-09T13:47Z

Som ni märker är jag nybörjare. Tackar brimba. Det går nu betydligt bättre.
Har ni inte någon fiffig lösning på hur man konverterar datumet 010808 till 2001-08-08?
Jag har en mycket begränsad inputyta så jag vill helst ha kvar den korta formateringen i databasen. :D

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

## #6 — Brimba, 2001-08-09T13:56Z

\<%
a = "010731"
a1 = mid(a, 1, 2)
a2 = mid(a, 3, 2)
a3 = mid(a, 5, 2)
b = "20" & a1 & "-" & a2 & "-" & a3
response.write b
%\>

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

## #7 — mattiasnordin, 2001-08-09T14:29Z

Man tackar brimba. Nu har jag gjort min första killer application.

Ja, jag skulle äta där det är rökförbud ;-)

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

## #8 — Brimba, 2001-08-09T14:45Z

Perfekt mattias!

Om du vill göra det ännu mer komplicerat kan du göra en funktion av det.

```
<%
Function modDate(myDate)
   a = myDate
   a1 = mid(a, 1, 2)
   a2 = mid(a, 3, 2)
   a3 = mid(a, 5, 2)
   b = "20" & a1 & "-" & a2 & "-" & a3
   modDate = b
End Function
%>

Sedan för att använda den gör du följande:

<%
response.write modDate("010809")
%>
```

Lycka till!

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

## #9 — mattiasnordin, 2001-08-09T15:01Z

Jag får tyvärr inte din funktion att fungera men jag fattar konceptet. Koden blir dessutom snyggare då jag har en ganska krånglig if / else struktur...
Undrar vad det som blir fel?

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

## #10 — Brimba, 2001-08-09T15:07Z

Nu fungerar den.
Hade råkat skriva myDate = b istället för modDate = b

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

## #11 — mattiasnordin, 2001-08-09T15:20Z

Nu ser det snyggare ut. Dessutom kan man ju återanvända funktionen! =)

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

## #12 — mattiasnordin, 2001-08-09T15:29Z

Nu blev det lite krångligare... Allt fungerar bra men jag kom på att jag nu kan få negativa datum om jag inte tar bort de som är äldre än dagens datum ur databasen.
Kan man skriva någon ball SQL fråga som tar bort allt ur databasen som är äldre än dagens datum?

```
Query = "Delete * from Kalender "
Query = Query & " where datum = ????
```

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

## #13 — Brimba, 2001-08-09T15:34Z

"Delete FROM Kalender WHERE datum \< #2001-08-09#"

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

## #14 — mattiasnordin, 2001-08-09T15:45Z

Ha ha ha - LOL - ja ..... något hände....

Nu har jag inte någon data i huvudtaget i databasen. Det gör inget dock. Bara resa sig och vara berädd på nästa smäll.

Vad har # för funktion?

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

## #15 — LarsG, 2001-08-09T15:51Z

\# används i access (enbart) för att specificera ett datum i ett sqlstatement.

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

## #16 — Brimba, 2001-08-09T15:53Z

/me använder access :e

Sorry mattias, räknade med att du hade backup :x

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

## #17 — mattiasnordin, 2001-08-09T15:54Z

då kanske man kan skriva:

```
Query = "DELETE * from Kalender "
Query = Query & " WHERE datum < #" &date &"#"
```

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

## #18 — LarsG, 2001-08-09T15:57Z

Jo, man kan också utnyttja den datumfunktion som finns i Access.

```
Query = "DELETE * from Kalender "
Query = Query & " WHERE datum < date "
```

Delete \* är också access-specifikt och det behövs bara om man använder Access 97 eller tidigare versioner.

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

## #19 — mattiasnordin, 2001-08-09T16:01Z

Hallo, jag kanske inte är så bra på det här. Det går att lägga till saker i kalendern med datum i framtiden men så fort jag lägger till ett gammalt datum så deletas allt ur databasen. Vad är det för fel på min delete fråga?

```
if datediffresult < 0 then
  response.write "TEST"
  Query = "DELETE * FROM Kalender "
  Query = Query & " WHERE datum < #" &date &"#"
  ' response.write (Query)
  set conntemp=server.createobject("adodb.connection")
  conntemp.open Dsn
  set rstemp=conntemp.execute(Query)
  conntemp.close
  set conntemp=nothing
end if
```

Jag vill alltså att bara det gamla raden med det gamla datumet ska raderas. Inte ALLT :-( ha ha...

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

## #20 — mattiasnordin, 2001-08-09T16:11Z

Kanske har med att göra att datumen i "datum" tabellen i databasen är i formatet 010808 istället för 2001-08-08. Kanske lättare att byta så att jag har samma format överallt....

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/11025-datum-variabel
