ho provato così ma non funziona .. estae solo le voci con "-1"

codice:
<%
  sql = "SELECT * FROM TabC where categoria='-1'"
    Set rs= Server.CreateObject("ADODB.Recordset")
  rs.Open sql, conn, 3, 3
  %>

<select class="fixed" multiple size="10" name="pippo">
<%rs.MoveFirst 
while not rs.eof%>
<option value="<%=rs("id")%>"><%=rs("voce")%></option> 
<%
catz = rs("id")
  sql = "SELECT * FROM TabC where categoria='"& catz &"'"
    Set rs2= Server.CreateObject("ADODB.Recordset")
    rs2.Open sql, conn, 3, 3
rs2.MoveFirst
%>
  <option value="<%=rs2("id")%>"><%=rs2("voce")%></option>   
  <% 
  
rs2.MoveNext

rs2.close 
%> 

<% 
  
rs.MoveNext
wend 
rs.close 
%>