Why do you want a separate <TABLE> for each record??? And then another <TABLE> inside of that, no less???
Haven't you heard that tables are passe? Time to move on to CSS based formats?
You don't show any ASP code to base my answer on, but in any case the basic code is simple enough.
*IF* I understand what you are after, something like this:
Code:
<div align="center">
<table border="0" cellpadding="0" style="border-collapse: collapse" width="168" id="table30">
<tr>
<td colspan=4> </td>
</tr>
<%
Set RS = yourConnection.Execute( yourSqlQuery )
For Row = 1 To 999999
If RS.EOF Then Exit For ' quit when no more records
Response.Write "<tr>" & vbNewLine ' start a new row
For Column = 1 To 4 ' as you asked for
If RS.EOF Then Exit For ' quit when no more records
%>
<td width="168">
<table border="0" cellpadding="0" style="border-collapse: collapse" width="150" id="table31">
<tr>
<td height="100"> </td>
</tr>
<tr>
<td bgcolor="#A5A5A5" style="font-family: Arial Narrow; color: #FFFFFF; font-size: 12px; font-weight: bold; text-align: left; text-transform: uppercase" height="40">
<table border="0" cellpadding="0" style="border-collapse: collapse" width="100%" id="table35" height="100%">
<tr>
<td width="5"> </td>
<td style="text-align: left; font-family: Arial Narrow; font-size: 12PX; text-transform: uppercase; color: #FFFFFF; font-weight: bold">
</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
<%
RS.MoveNext
Next ' next column
Response.Write "</TR>" & vbNewLine ' next outer row
Next ' next row
RS.Close
%>
<tr>
<td colspan=4> </td>
</tr>
</table>
</div>