Il problema è questo: in un elenco faccio variare "class" in base a quale record viene mostrato.

Mi spiego meglio.

Ho diverse classi che, nell'elenco, devono essere messe in base a questo criterio:
primo elemento - class "first"
secondo elemento - class "second"
terzo elemento - class "first"
quarto elemento - class "second"
...
ultimo elemento - class "last" o se i record sono dispari class "first".

Per esempio, se ho 4 record:
first
second
first
last

Se ho 5 record:
first
second
first
second
first

Il problema sta nell'impostare class = "last".

Posto un codice che mi restuisce questo:
primo elemento - class "first"
secondo elemento - class "second"
terzo elemento - class "first"
quarto elemento - class "second"
...

codice:
<ul id="sponsors">
<%
boxtype = "first"

SqlString = "SELECT img, id, titolo FROM sponsor WHERE attiva='1' ORDER BY pos ASC"
SET RS = Conn.Execute(SqlString)

WHILE NOT RS.EOF
%>

<li class="<%= boxtype %>">
<a href="javascript:apriPOPUP('sponsor_popup.asp?id=<%=RS("id")>','titolo',640,500,0,0)">
[img]images/sponsor/mini_thumb/<%=RS([/img]" border="0" alt="<%=RS("titolo")%>" />
</a>


<%
If boxtype = "first" Then
   boxtype ="second"
Else
   boxtype = "first"
End If

RS.MoveNext
WEND
%>[/list]
A questo punto vorrei impostare un ciclo IF che vada a testare se il record corrente è l'ultimo... ma non riesco a venirne a capo.

Se riuscissi a "ragionare" sul record corrente, farei così:
- Parto e assegno (al primo) class="first" (adesso è così).

- Se c'è un solo record, il ciclo è finito.

- Se c'è più di un record.
- conto quanti record sono presenti = TOTALE.
- poi devo assegnare la classe al record successivo.

Quindi:
codice:
IF TOTALE meno la posizione del record precedente =1 AND boxtype del record precedente = "first" THEN 
     (vuol dire che sono arrivato all'ultimo record) boxtype= "last"
ELSE 
    boxtype = "first".
END IF
Qualche idea?

Grazie!