05. juli 2002 - 10:17Der er
22 kommentarer og 1 løsning
select case
jeg har denne select-sætning ...
Select Case varDay Case 0 Response.Write("(i dag) ") Case 1 Response.Write("(i går) ") Case 2 Response.Write("(i forgårs) ") Case 3 Response.Write("(3 dage siden) ") Case Else Response.Write "(" & varDay & " dage siden)" End Select
hvordan laver jeg en case - hvis talet er større end 3? (kan man ikke lave noget i stil < 3?)
Select Case varDay Case 0 Response.Write("(i dag) ") Case 1 Response.Write("(i går) ") Case 2 Response.Write("(i forgårs) ") Case 3 Response.Write("(3 dage siden) ") Case 4 Response.Write("(Bla Bla Bla....) ") Case Else Response.Write "(" & varDay & " dage siden)" End Select
>>a-torsten - jeg vil bruge funktionen til at vise hvor mange dage der er gået... hvis jeg indsætter if-sætningen så vil der næsten altid være gået 4 dage ... (ved godt at det er mig der har formuleret mig dårligt)
Jeg har en dato - som jeg gerne vil vise hvor dage der er til (negativt tal - deraf min "else" sætning) og med hvor mange dage datoen er overskredet... (positivt tal) - tror desværre jeg er nødt til at lave min "select" sætning om til en helvedes masse if-sætninger
Dim Number Number = 9 Select Case True Case Number = 8 Response.Write "otte" Case Number > 8 Response.Write "større end 8" Case Else Response.Write "et andet tal" End Select
Select Case varDay Case 0 Response.Write("(i dag) ") Case 1 Response.Write("(i går) ") Case 2 Response.Write("(i forgårs) ") Case 3 Response.Write("(3 dage siden) ") case varday > 3 Response.Write("(mere end 3 dage siden) ") Case Else Response.Write "(" & varDay & " dage siden)" End Select
Dk_akj >> jeg kegler lidt i det nu ... (det er stadig tidligt om morgen) kan du tilpasse min kode ?
<% Sub Diff(strDate) Dim varDay varDay = DateDiff("d", (strDate), Now)
Select Case varDay Case 0 Response.Write("(i dag) ") Case 1 Response.Write("(i går) ") Case 2 Response.Write("(i forgårs) ") Case 3 Response.Write("(3 dage siden) ") Case varDay > 3 Response.Write("(mere end 3 dage siden) ") Case Else Response.Write "(" & varDay & " dage siden)" End Select
Hurtigt lavet og IKKE testet, er tilbage om ½ time.
//akj
Sub Diff(strDate) Dim varDay varDay = DateDiff("d", (strDate), Now)
Select Case varDay Case 0 Response.Write("(i dag) ") Case 1 Response.Write("(i går) ") Case 2 Response.Write("(i forgårs) ") Case 3 Response.Write("(3 dage siden) ") case varday > 3 Response.Write("(mere end 3 dage siden) ") Case Else Response.Write "(" & varDay & " dage siden)" End Select End Sub
hmm - den bliver ved med at vælge min "else" case. ud fra Response.Write "(" & varDay & " dage siden)" kan jeg se at varDay er 371 ... weird ... jeg er sgu ved at give op *G*
Parameter til funktionen er en streng i formattet dd-mm-yyyy
//akj
Sub Diff(strDate) ' dansk locale - slet den bare hvis du har angivet den et andet sted Session.LCID = 1030
Dim varDay olddate = datevalue(str_date) varDay = DateDiff("d", olddate, Now)
Select Case varDay Case 0 Response.Write("(i dag) ") Case 1 Response.Write("(i går) ") Case 2 Response.Write("(i forgårs) ") Case 3 Response.Write("(3 dage siden) ") case varday > 3 Response.Write("(mere end 3 dage siden) ") Case Else Response.Write "(" & varDay & " dage siden)" End Select end sub
prøv at erstate select delen med dette: Select Case true Case varDay = 0 Response.Write("(i dag) ") Case varDay = 1 Response.Write("(i går) ") Case varDay = 2 Response.Write("(i forgårs) ") Case varDay = 3 Response.Write("(3 dage siden) ") Case varday > 3 Response.Write("(mere end 3 dage siden) ") Case Else Response.Write "(" & varDay & " dage siden - else sætning)" End Select
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.