Se ho capito il tuo problema (se no vorrà dire che sono ad averne ) prova un pò con il codice che ti posto.
Le aggiunte e/o modifiche sono quelle in grassetto.

<%
cat2 = request.form("categ")
uoat = request.form("uoat")
'prendo i dati da una pagina precedente

'Stringa per la connessione
'cString = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & server.MapPath("./area_protetta/mdb/ife.mdb")
cString=Application("CNN")
'set connession to database
Set objConn=Server.CreateObject("ADODB.Connection")

'open connession to database
objConn.Open cstring

'xxxxxxxx presentazione dati xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Set rs = Server.CreateObject("ADODB.Recordset")


nometabella="corsi" ' inserisci qui il nome della tabella da vedere

sql = "SELECT * from "&nometabella&" where id_anz="&cat2&" AND id_ruo="&uoat&" AND vis= -1"
'response.write sql:response.end
'apro il rs
rs.Open sql, objConn, 3, 3 'cursore dinamico

if rs.eof then
%>



Nessun Dato disponibile></p>

<%
else

%>

<td width="40%" >Corso</td>
<td width="50%">Ruolo</td>
<td width="10%" >Anzianita</td>
<td width="10%">Edizione</td>
<td width="10%">Sel</td>
</tr>

<%
Dim x 'Varibile di incremento per differenziare il nome del form
x = 0

while not rs.EOF
%>

<form name="<% ="form_" & x %>" method="post" action="vediamo.asp"> 'Creo un form in dinamico con un nome diverso ad ogni ciclo
<input type="hidden" name="txtCorso" value="<% =rs.fields("corso") %>"> 'casella hidden per memorizzare il corso
<input type="hidden" name="txtRuolo" value="<% =rs.fields("ruolo") %>"> 'casella hidden per memorizzare il ruolo
<input type="hidden" name="txtAnzianita" value="<% =rs.fields("anzianita") %>"> 'casella hidden per memorizzare l'anzianità

<tr>
<td><%=rs.fields("corso")%></td>
<td><%=rs.fields("ruolo")%></td>
<td><%=rs.fields("anzianita")%></td>
<td>
<select name="edizioni">
<option value=""selected>Seleziona</option>
<%

Set rs1 = Server.CreateObject("ADODB.Recordset")

sql2 = "select * from edizioni where corso = '"& rs.fields("corso") &"' and vis = -1"

rs1.open sql2, objconn
if not rs1.eof then
do until rs1.eof
%>
<option value="<%=rs1("edizioni")%>"><%= rs1("edizioni")%></option>
<%
rs1.movenext
loop
end if
%>

</select>
').submit()">iscriviti 'per ogni riga hai il link che invia il singolo form di riferimento, quindi anche se l'utente sceglie tutti i corsi invia solo le info del corso dove ha fatto click
</td>
</tr>
</form>
<%
x = x + 1 'Incremento x per il ciclo successivo
rs.MoveNext
wend
%>
<tr>
<td><input type="submit" name="Submit" value="Invia">

</td>
</tr>
</table>


<%
end if
rs.close
rs1.close

set rs=nothing

objConn.close
set objConn=nothing
%>

Poi successivamente nella pagina vediamo.asp ovviamente ti recuperi i valori dalle caselle di testo e dalla select.

Spero di averci azzeccato
Ciao e fammi sapere se è andata ...