---
title: "kalender..."
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/169328-kalender"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "Fredriksson"
published: "2008-02-24T22:28:08.000Z"
updated: "2008-02-25T12:58:10.000Z"
replies: 4
views: 572
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/169328-kalender"
---

# kalender...

## #1 — Fredriksson, 2008-02-24T22:28Z

Använder följande kod för att rita upp en kalender. Nu vill jag lägga till aktuell månad ovanför t ex "november" samt ha två pilar så man kan välja nästa eller föregående månad. 

Nån som kan hjälpa mig med detta?

```

    <table border="0">
      <tr>
<%

nu = formatnumber(right(date,2),0)

dtmDate = Date()

For i = 1 To WeekDay(DateSerial(Year(dtmDate), Month(dtmDate), "01"), vbMonday) - 1
  Response.Write("        <td></td>" & vbCrLf)
  intCount = intCount + 1
Next

intDays = Day(DateAdd("d", -1, DateAdd("m", 1, DateSerial(Year(dtmDate), Month(dtmDate), "01"))))

For i = 1 To intDays
  If intCount Mod 7 = 0 AND intCount > 0 Then Response.Write("      </tr><tr>" & vbCrLf)

	if clng(nu) = clng(i) then
  Response.Write("        <td class='dagnu'>" & i & "</td>" & vbCrLf)
	else
  Response.Write("        <td class='dag'>" & i & "</td>" & vbCrLf)
	end if

  intCount = intCount + 1
Next

If intCount Mod 7 > 0 Then
  For i = (intCount Mod 7) + 1 To 7
    Response.Write("        <td></td>" & vbCrLf)
  Next
End If
%>
      </tr>
    </table>
```

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

## #2 — voigtann1, 2008-02-25T06:09Z

Ersätt:

```
dtmDate = Date()
```

 Med:

```
If IsDate(Request.QueryString("date")) Then
    dtmDate = Request.QueryString("date")
Else
    dtmDate = Date()
End If

Response.Write "<tr><td colspan=""8"">"
Response.Write "<a href=""?date=" & CDate(DateAdd("m",-1,DateSerial(Year(dtmDate),Month(dtmDate),Day(dtmDate)))) & """><<</a> "
Response.Write  MonthName(Month(dtmDate))
Response.Write " <a href=""?date=" & CDate(DateAdd("m",1,DateSerial(Year(dtmDate),Month(dtmDate),Day(dtmDate)))) & """>>></a>"
Response.Write "</td></tr>"
```

ändra calender.asp till din fil där du har kaledern. Kan ha missat ( eller någon " också.

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

## #3 — Fredriksson, 2008-02-25T12:46Z

Tack för svaret!

Funkar bra bortsett från en sak. När man byter månad så är den dagens datum (ex den 25:e) markerad även fast det inte är den 25:e i den månaden....

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

## #4 — voigtann1, 2008-02-25T12:54Z

det är för att din variabel:
"nu = formatnumber(right(date,2),0)" ta bara dagen.. och när du kontrollera det så kollar du inte om det är månad "februari" och år "2008"
... återkommer med en rätt kod.

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

## #5 — voigtann1, 2008-02-25T12:58Z

```
<table border="0">
	<tr>
<%
[b]Dim dtmDate, nu, intDays, i, intCount[/b]

If IsDate(Request.QueryString("date")) Then
	dtmDate = Request.QueryString("date")
Else
	dtmDate = Date()
End If

nu = [b]Date()[/b]
intDays = Day(DateAdd("d", -1, DateAdd("m", 1, DateSerial(Year(dtmDate), Month(dtmDate), "01"))))

Response.Write "<tr><td colspan=""8"">"
Response.Write "<a href=""?date=" & CDate(DateAdd("m",-1,DateSerial(Year(dtmDate),Month(dtmDate),Day(dtmDate)))) & """><<</a> "
Response.Write  MonthName(Month(dtmDate))
Response.Write " <a href=""?date=" & CDate(DateAdd("m",1,DateSerial(Year(dtmDate),Month(dtmDate),Day(dtmDate)))) & """>>></a>"
Response.Write "</td></tr>"

For i = 1 To WeekDay(DateSerial(Year(dtmDate), Month(dtmDate), "01"), vbMonday) - 1
	Response.Write("        <td></td>" & vbCrLf)
	intCount = intCount + 1
Next

For i = 1 To intDays
	If intCount Mod 7 = 0 AND intCount > 0 Then Response.Write("      </tr><tr>" & vbCrLf)
	
	[b]If day(nu) = clng(i) and year(nu) = Year(dtmDate) And Month(nu) = Month(dtmDate) Then[/b]
		Response.Write("        <td class='dagnu'>" & i & "</td>" & vbCrLf)
	Else
		Response.Write("        <td class='dag'>" & i & "</td>" & vbCrLf)
	End If

	intCount = intCount + 1
Next

If intCount Mod 7 > 0 Then
	For i = (intCount Mod 7) + 1 To 7
		Response.Write("        <td></td>" & vbCrLf)
	Next
End If

%>
	</tr>
</table>
```

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/169328-kalender
