non aprire il recordset così ... ma così :

Set cnnAdo = Server.CreateObject("ADODB.Connection")
cnnAdo.open "Provider=SQLOLEDB.1;Persist Security Info=False;User id=sa;Initial Catalog=DB;Data Source=(local);"
Set rs = Server.CreateObject("ADODB.Recordset")
rs.open "SELECT * FROM tabella ORDER BY campo", cnnAdo,adopendynamic, adlockoptimistic
while not rs.eof
if condizione then
rs.movelast
else
rs.movenext
end if
wend
rs.close
Set rs = nothing
cnnAdo.close
Set cnnAdo = nothing


con quel cursor e quel lock dovresti riuscire a fare le operazioni che ti servono