Om jag vill hämta alla poster i databasen som har skapats denna vecka. Men med DatePart funktionen så börjar ju en vecka på söndag. Kan jag på något sett med hjälp av DateAdd funktionen? Jag vill alltså att veckan skall börja på måndag och sluta på söndag.
Din kod fungerar kanske just nu, men sista parametern syftar till att tala om vad som räknas som årets första vecka. I Sverige är det den första veckan som innehåller fyra januaridagar som är årets första vecka, inte den första vecka som innehåller sju januaridagar. Så ja, din kod fungerar, i drygt tre månader till.
Edit: din kod fungerar faktiskt nästa år också, pga röta. Men sen är det stopp. Använd alltid vbFirstFourDays, så slipper du vara tvungen att ha röta för att dina datumfunktioner ska vara riktiga.
När jag lägger till de två sista parametrarna i DatePart funktionen i SQL satsen får jag:
Error Type:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E10)
[Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 2.
/stat/313.asp, line 22
SELECT * FROM Medlemmar WHERE referens = 1 AND DatePart('ww', start, vbMonday, vbFirstFourDays) = DatePart('ww', Now, vbMonday, vbFirstFourDays)
Felmeddelande...
Error Type:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E10)
[Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 3.
/lp/ny/hander_veckan.asp, line 13
Rad 13...
Set rs = objConn.Execute("SELECT * FROM Medlemmar WHERE referens = " & Session("REF") & " AND DatePart('ww', start, vbMonday, vbFirstFourDays) = DatePart('ww', Now, vbMonday, vbFirstFourDays)")
Felmeddelandet brukar betyda: "Det finns 3 tabell- eller fältnamn jag inte fattar". Jag skulle gissa på att vb-konstanterna vbMonday och vbFirstFourDays är odefinierade i Access, och därför tror access/odbc att du har specificerat fältnamn. Använd de numeriska värdena istället.