I så fall måste du lägga den andra sql-satsen innaför loopen
<%
SQL = "SELECT VID FROM kompisar WHERE DID='"&RecSet("ID")&"'"
Set RecSet2 = Connect.Execute(SQL)
If RecSet2.EOF Then
%>
<% =an%> har inga kompisar just nu
<%
Else
%>
Användarnamn:<p>
<%
Do Until RecSet2.EOF
VID = Recset2("VID")
SQL = "SELECT * FROM medlemmar WHERE ID="&VID&""
Set RecSet3 = Connect.Execute(SQL)
KID = Recset3("ID")
anvnamn = RecSet3("anvandarnamn")
%>
<a href="community_medlem.asp?ID=<% =ID%>&KID=<% =KID%>"><% =anvnamn%></a><p><p><br>
<%
RecSet2.MoveNext
Loop
%>
Nu skall man helst inte skriva sådan kod, utan det går alldeles utmärkt att få fram allt med hjälp av en sqlsats
<%
SQL = "select anvandarnamn from medlemmar where id in (SELECT VID FROM kompisar WHERE DID='"&RecSet("ID")&"'"
Set RecSet2 = Connect.Execute(SQL)
If RecSet2.EOF Then
%>
<% =an%> har inga kompisar just nu
<%
Else
%>
Användarnamn:<p>
<%
Do Until RecSet2.EOF
KID = Recset2("ID")
anvnamn = RecSet2("anvandarnamn")
%>
<a href="community_medlem.asp?ID=<% =ID%>&KID=<% =KID%>"><% =anvnamn%></a><p><p><br>
<%
RecSet2.MoveNext
Loop
%>
------------------
essentitia preter non sans multiplicandum