Allora...
nella pagina crei una form che richiama se stessa in cui metti i pulsanti che determinano l'ordinamento, per es.:

<form action="conferma_ricerca.asp" method="POST">
<tr>
<td width="7%"><input type="submit" value="Dal" name="B1"></td>
<td width="7%"><input type="submit" value="Al" name="B1"></td>
<td width="12%"><input type="submit" value="Sede" name="B1"></td>
<td width="25%"><input type="submit" value="Descrizione" name="B1"></td>
</tr></form>

quando carichi la pagina, controlli se sei arrivato dalla stessa pagina e determini il valore di B1: in base a questo crei una variabile "ordinamento"

select case request.form("B1")
case "Descrizione"
ordinamento="attività"
case "Dal"
ordinamento="inizio"
case "al"
ordinamento="fine"
end select

dove attività, inizio e fine sono i nomi dei campi.
A questo punto è sufficiente inserire la variabile nella select

rs.source="SELECT FROM tabella WHERE campo=" & valore & "ORDER BY " & ordinamento


Così hai un'unica pagina ed un'unico recordset