Bueno, es solo una idea, quizás no la más optima para algunos, pero ojala te sirva.
Código PHP:
<%
set conn=Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open "provider=microsoft.jet.oledb.4.0;data source=" & server.MapPath("bd_consulta.mdb") & ""
cdatos=request.form("tabla_consul")
set rs=createobject("ADODB.Recordset")
sqltxt="select dato1,dato2,dato3,dato4,dato5,dato6,dato7,dato8,da to9,dato10,dato11,dato12 from tabla_consul where dato1 like '%"&cdatos&"%'"
rs.ActiveConnection = conn
rs.open sqltxt,conn
%>
<%if rs.eof then%>
<h3 align="center"><font face="Arial, Helvetica, sans-serif" size="+0" color="#003366">No hay datos que coincidan con su petición</h3>
<%else%>
<%
'--declaramos dos arreglos de largo 1000 suponiendo que la cantidad de datos es menor o igual que ese numero
Dim ArrayUnoSeis(1000,1000)
Dim ArraySieteDoce(1000,1000)
Dim contador, i,j
contador = 0
i = 0
j = 0
do while not rs.eof
i = i + 1
'--discriminamos por nombres de columnas, las seis primeras van al aprimer arreglo, las seis siguientes al segundo
if rs.fields(1).name = "dato1" then ArrayUnoSeis(i,rs("dato1"))
if rs.fields(2).name = "dato2" then ArrayUnoSeis(i,rs("dato2"))
if rs.fields(3).name = "dato3" then ArrayUnoSeis(i,rs("dato3"))
if rs.fields(4).name = "dato4" then ArrayUnoSeis(i,rs("dato4"))
if rs.fields(5).name = "dato5" then ArrayUnoSeis(i,rs("dato5"))
if rs.fields(6).name = "dato6" then ArrayUnoSeis(i,rs("dato6"))
if rs.fields(7).name = "dato7" then ArraySieteDoce(i,rs("dato7"))
if rs.fields(8).name = "dato8" then ArraySieteDoce(i,rs("dato8"))
if rs.fields(9).name = "dato9" then ArraySieteDoce(i,rs("dato9"))
if rs.fields(10).name = "dato10" then ArraySieteDoce(i,rs("dato10"))
if rs.fields(11).name = "dato11" then ArraySieteDoce(i,rs("dato11"))
if rs.fields(12).name = "dato12" then ArraySieteDoce(i,rs("dato12"))
rs.movenext
loop
rs.close
end if
%>
<%para mostrar, rescatamos desde los arreglos atraves de un for%>
<table>
<tr>
<th>dato1</th>
<th>dato2</th>
<th>dato3</th>
<th>dato4</th>
<th>dato5</th>
<th>dato6</th>
</tr>
<%for i=1 to 1000%>
<%if ArrayUnoSeis(i,1)="" then i=1000%>
<tr>
<td><%=ArrayUnoSeis(i,1)%></td>
<td><%=ArrayUnoSeis(i,2)%></td>
<td><%=ArrayUnoSeis(i,3)%></td>
<td><%=ArrayUnoSeis(i,4)%></td>
<td><%=ArrayUnoSeis(i,5)%></td>
<td><%=ArrayUnoSeis(i,6)%></td>
</tr>
<%next%>
</table>
<table>
<th>dato7</th>
<th>dato8</th>
<th>dato9</th>
<th>dato10</th>
<th>dato11</th>
<th>dato12</th>
</tr>
<%for i=1 to 1000%>
<%if ArrayUnoSieteDoce(i,1)="" then i=1000%>
<tr>
<td><%=ArraySieteDoce(i,7)%></td>
<td><%=ArraySieteDoce(i,8)%></td>
<td><%=ArraySieteDoce(i,9)%></td>
<td><%=ArraySieteDoce(i,10)%></td>
<td><%=ArraySieteDoce(i,11)%></td>
<td><%=ArraySieteDoce(i,12)%></td>
</tr>
<%next%>
</table>
Saludos!