se eu te endenti, você deve criar a tabela e após criar a tabela, coloque um while que vai criar quantas linhas forem necessárias, se tiver número máximo de linhas você pode retornar sempre este número na SQL ...
<table width="460">
<%
while not rst.eof
%>
<tr>
<td width="115" align="left" class="formulario_tr2"><p><img src="Figuras/<% = rst("Imagem") %>" align="top"></p>
<p><font class="Texto1"> </font></p></td>
<td width="115" align="left" valign="top" class="formulario_tr3"><p><font class="TextoPadrao">
<% = rst("Descricao do produto") %>
</font></p>
<p><a href="Default_Promocao_Detalhes.asp?Codigo=<% = rst("Codigo do produto") %>" class="LinkPadrao"><font color="#0000FF" onmouseover="MM_displayStatusMsg('CenterSul Informática - Detalhes do Produto');return document.MM_returnValue">Detalhes</font></a></p>
<p><font class="Texto1"> </font></p></td>
<%
if not rst.eof then
rst.movenext
end if
%>
<td width="115" align="left" class="formulario_tr2"><p><img src="Figuras/<% = rst("Imagem") %>" align="top"></p>
<p><font class="Texto1"> </font></p></td>
<td width="115" align="left" valign="top" class="formulario_tr2" onMouseOver="MM_displayStatusMsg('CenterSul Informática - Detalhes do Produto');return document.MM_returnValue">
<p><font class="TextoPadrao">
<% = rst("Descricao do produto") %>
</font></p>
<p><a href="Default_Promocao_Detalhes.asp?Codigo=<% = rst("Codigo do produto") %>" class="LinkPadrao"><font color="#0000FF">Detalhes</font></a></p></td>
</tr>
<%
if not rst.eof then
rst.movenext
end if
wend
%>
</table></td>