Nell'insieme pensavo a una cosa del genere:
codice:
<%
[connessione, apertura rs]
k=0
While Not rs.EOF
indiceRs=rs.AbsolutePosition 'memorizzo la posizione del cursore
contattoTemp=rs("contatto") 'memorizzo il contatto per questo record
controllo(k)=rs("contatto")
check = true
for j=0 to k-1
if rs("contatto") = controllo(j) then
check = false
exit for
next
if check=true then
%><tr><td>
<%=rs("contatto")
%>
</td>
<%
'porto rs all'inizio e per ogni contatto uguale scrivo
'sulla stessa riga la scadenza
for y=0 to 6 'se gli elementi dell'array-data erano 7....
rs.moveFirst
for i=0 to rs.RecordCount
if rs("data")=array_date(y) AND rs("contatto")=contattoTemp then
response.write("<td>"&rs("ora")&" </td>")
end if
rs.moveNext
next
next
end if
%>
</tr>
<%
end if
k=k+1
rs.moveNext
next
'poi dopo aver chiuso la riga porto nuovamente l'indice rs a 1
'e muovo il recordset al record successivo per costruire una nuova riga
rs.moveFirst
rs.move(indiceRs)
wend
ma è da testare per benino.......