---
title: "DatePart"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/126289-datepart"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "Coccozz"
published: "2005-04-13T09:24:40.000Z"
updated: "2005-04-13T15:12:36.000Z"
replies: 3
views: 216
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/126289-datepart"
---

# DatePart

## #1 — Coccozz, 2005-04-13T09:24Z

Hej!
behöver hjälp med att ta fram aktuella veckan. Har för det denna lilla "formel"   :p 

```
X = DatePart("WW", now, vbMonday)
```

Som ni ser säger den att X är lika med den aktuella veckan. Problemet är att 

```
<%=X%>
```

ger fel vecka. Idag ger det vecka 16 men nog f\*n är det vecka 15?! Eller?  :q

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

## #2 — LarsG, 2005-04-13T09:31Z

```
X = DatePart("WW", now(),vbMonday,vbFirstFourDays)
```

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

## #3 — Coccozz, 2005-04-13T09:32Z

Och så lätt det kan vara att rätta till sina fel :e. Men jag hade iaf rätt i att det inte var vecka 16...än :P
Tack för hjälpen

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

## #4 — Guffa, 2005-04-13T15:12Z

Funktionen DatePart har dock en bugg:
<http://support.microsoft.com/kb/q200299/>

Du kan använda funktionen som beskrivs i artikeln för att kolla efter felet, eller du kan använda den här funktionen, som returnerar rätt vecka:

```
Function GetWeekOfYear(d)
	Dim y, first, start

	y = Year(d) + 1
	Do
		first = DateSerial(y, 1, 1)
		y = y - 1
		start = DateAdd("d", 3 - ((WeekDay(first) + 1) mod 7), first)
	Loop while d < start
	GetWeekOfYear = Int(DateDiff("d", start, d) / 7) + 1
End Function
```

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/126289-datepart
