les comparto esta funcion que he realizado en mi tiempo libre. permite, entregandole los datos necesarios, paginar automaticamente los resultados utilizando getrows. realize algunas pruebas con y sin esta funcion y la demora es practicamente imperceptible.
trate de hacer customizable la mayor parte del codigo para que pueden moldearla a su gusto (fuentes, tamaños, etc). es muy parecida a la usa FDW.
el codigo esta hecho a partir de la paginacion de aspfacil.com
http://www.aspfacil.com/codigo/verco...o=rspagina.asp
y que en general casi todos usamos aca.
cualquier duda o mejora es bienvenida.
para llamarlo lo usan asi
link_paginas paginaActual, paginastotales, "demo.asp", parametros, registros, "usuarios encontrados"
Código:
  
 SUB LINK_PAGINAS(paginaactual, paginastotales, nombre_pagina, parametros, registros, titulo)
 '#############################################################
 ' paginaactual       = Corresponde a la pagina en que se encuentra posicionado actualmente
 ' paginastotales     = Numero total de paginas devueltas
 ' Pagina_web         = nombre de la pagina paginada ej. paginacion.asp
 ' Parametros         = parametros que queremos agregar en los vinculos de las paginas
 ' registros          = numero total de registros encontrados
 ' Titulo             = Titulo para la paginacion ej. "usuarios encontrados"
 ' ancho_tabla        = Ancho de la tabla
 ' ancho_celda        = ancho de las celdas. recomendable 20
 ' numero_de_hojas    = corresponde al numero de hojas que se veran en pantalla.
           'recomiendo utilizar numero impares y entre 5 y 10.
 ' fuente_numeros     = fuente de los numeros
 ' fuente_titulo      = fuente del titulo
 ' size_titulo        = tamaño de la fuente del titulo
 ' imagen_hojas       = ruta para la imagen de las hojas. dejar en blanco si no se va utilizar
 ' fondo_celda_activa = ruta para imagen o color de la celda activa.
                           ' ej. para color "bgcolor=""red"""
         ' ej. para una imagen de fondo "background=""fondo.jpg"""
 ' size_numero        = tamaño del numero de pagina
 ' size_ant_sig       = Tamaño del vinculo anterior y siguiente
 ' fuente_ant_sig     = Fuente del vinculo anterior y siguiente
 ' caracter_anterior  = caracter que representa un vinculo a la pagina anterior
 ' caracter_siguiente = caracter que representa un vinculo a la pagina siguiente
 ' caracter_primero   = caracter que representa un vinculo a la primera pagina
    ' caracter_ultimo    = caracter que representa un vinculo a la ultima pagina
 '#############################################################
 'seccion editable
 ancho_tabla="100%"
 ancho_celda=20
 numero_de_hojas=7
 fuente_numeros="Tahoma, Arial, Verdana"
 fuente_titulo="arial"
 size_titulo=1
 imagen_hojas=""
 fondo_celda_activa="bgcolor=""yellow"""
 size_numero=1
 size_ant_sig=1
 fuente_ant_sig="arial"
 caracter_anterior="<"
 caracter_siguiente=">"
 caracter_primero="<<"
 caracter_ultimo=">>"%>
 <style>
 .Td_subrayado {//rayado cuadrado
  border-top: 1px;
  border-left: 1px;
  border-right: 1px;
  border: 1px solid;
  }
 </style>
 <%
 '############################################################
 if len(parametros)>=1 then parametros=parametros+"&"
 %>
 <table align="center" border="0" width="<%=ancho%>" cellpadding="0" cellspacing="0" style="border-collapse: collapse">
 <tr>
 <td align="right"><font face="<%=fuente_titulo%>" size="<%=size_titulo%>"><%=registros%> <%=titulo%> Pág. <%=paginaactual%> de <%=paginastotales%>  </font></td>
 <td width="20" align="center"><%=imagen_hojas%></td><%
 if paginastotales>1 then
  if paginastotales>numero_de_hojas then
   if paginaactual<=numero_de_hojas then
    for i=1 to numero_de_hojas
     if paginaactual=i then%>
      <td width="<%=ancho_celda%>" align="center" <%=fondo_celda_activa%> class="td_subrayado">
      <font size="<%=size_numero%>" face="<%=fuente_numeros%>"><b><%=paginaactual%></b></font></td><%
     else%>
      <td width="<%=ancho_celda%>" align="center" class="td_subrayado"><a href="<%=nombre_pagina%>?<%=parametros%>pagina=<%=i%>">
      <font size="<%=size_numero%>" face="<%=fuente_numeros%>"><%=i%></font></a></td><%
     end if
    next%>
    <td width="<%=ancho_celda%>" align="center" class="td_subrayado">
    <a href="<%=nombre_pagina%>?<%=parametros%>pagina=<%=paginaactual+1%>" title="Pagina Siguiente (<%=paginaactual+1%>)"><font size="<%=size_ant_sig%>" face="<%=fuente_ant_sig%>"><b><%=caracter_siguiente%></b></font></a></td>
    <td width="<%=ancho_celda%>" align="center" class="td_subrayado"><a href="<%=nombre_pagina%>?<%=parametros%>pagina=<%=paginastotales%>" title="Ultima Pagina (<%=paginastotales%>)"><font size="<%=size_ant_sig%>" face="<%=fuente_ant_sig%>"><b><%=caracter_ultimo%></b></font></a></td><%
   else
    'estamos en medio de la paginacion
    if paginaactual+numero_de_hojas<=paginastotales then%>
     <td width="<%=ancho_celda%>" align="center" class="td_subrayado" valign="middle"><a href="<%=nombre_pagina%>?<%=parametros%>pagina=1" title="Primera Pagina (1)"><font size="<%=size_ant_sig%>" face="<%=fuente_ant_sig%>"><b><%=caracter_primero%></b></font></a></td>
     <td width="<%=ancho_celda%>" align="center" class="td_subrayado" valign="middle"><a href="<%=nombre_pagina%>?<%=parametros%>pagina=<%=paginaactual-1%>" title="Pagina Anterior (<%=paginaactual-1%>)"><font size="<%=size_ant_sig%>" face="<%=fuente_ant_sig%>"><b><%=caracter_anterior%></b></font></a></td>
     <%
     f=int(numero_de_hojas/2)
     j=0
     for i=paginaactual-(f) to paginaactual+(f)
      if paginaactual=i then%>
       <td width="<%=ancho_celda%>" align="center" <%=fondo_celda_activa%> class="td_subrayado" valign="middle"><font size="<%=size_numero%>" face="<%=fuente_numeros%>"><b><%=i%></b></font></td><%
      else%>
       <td width="<%=ancho_celda%>" align="center" class="td_subrayado" valign="middle"><a href="<%=nombre_pagina%>?<%=parametros%>pagina=<%=paginaactual-f+j%>"><font size="<%=size_numero%>" face="<%=fuente_numeros%>"><%=i%></font></a></td><%
      end if
      j=j+1
     next%>
     <td width="<%=ancho_celda%>" valign="middle" align="center" class="td_subrayado"><a href="<%=nombre_pagina%>?<%=parametros%>pagina=<%=paginaactual+1%>" title="Pagina Siguiente (<%=paginaactual+1%>)"><font size="<%=size_ant_sig%>" face="<%=fuente_ant_sig%>"><b><%=caracter_siguiente%></b></font></a></td>
     <td width="<%=ancho_celda%>"  valign="middle" align="center" class="td_subrayado"><a href="<%=nombre_pagina%>?<%=parametros%>pagina=<%=paginastotales%>" title="Ultima Pagina (<%=paginastotales%>)"><font size="<%=size_ant_sig%>" face="<%=fuente_ant_sig%>"><b><%=caracter_ultimo%></b></font></a></td><%
    else
     ' parte final de la paginacion%>
     <td width="<%=ancho_celda%>" align="center" class="td_subrayado"><a href="<%=nombre_pagina%>?<%=parametros%>pagina=1" title="Primera Pagina (1)"><font size="<%=size_ant_sig%>" face="<%=fuente_ant_sig%>"><b><%=caracter_primero%></b></font></a></td>
     <td width="<%=ancho_celda%>" align="center" class="td_subrayado"><a  href="<%=nombre_pagina%>?<%=parametros%>pagina=<%=paginaactual-1%>" title="Pagina Anterior (<%=paginaactual-1%>)"><font size="<%=size_ant_sig%>" face="<%=fuente_ant_sig%>"><b><%=caracter_anterior%></b></font></a></td><%
     for i=((paginastotales+1)-numero_de_hojas) to paginastotales
      if i<>0 then
       if paginaactual=i then%>
        <td width="<%=ancho_celda%>" align="center" <%=fondo_celda_activa%> class="td_subrayado"><font size="<%=size_numero%>" face="<%=fuente_numeros%>"><b><%=i%></b></font></td><%
       else%>
        <td width="<%=ancho_celda%>" align="center" class="td_subrayado"><a href="<%=nombre_pagina%>?<%=parametros%>pagina=<%=i%>"><font size="<%=size_numero%>" face="<%=fuente_numeros%>"><%=i%></font></a></td><%
       end if
      end if
     next
    end if
   end if
  else
   ' paginas totales es menor a numero_de_hojas
   for i=1 to paginastotales
    if paginaactual=i then%>
     <td width="<%=ancho_celda%>" align="center" <%=fondo_celda_activa%> class="td_subrayado"><font size="<%=size_numero%>" face="<%=fuente_numeros%>"><%=paginaactual%></font></td><%
    else%>
     <td width="<%=ancho_celda%>" align="center" class="td_subrayado"><a href="<%=nombre_pagina%>?<%=parametros%>pagina=<%=i%>"><font size="<%=size_numero%>" face="<%=fuente_numeros%>"><%=i%></font></a></td><%
    end if
   next
  end if
 end if%>
 </tr>
 </table>
<%END SUB
%>
 
 
Este tema le ha gustado a 1 personas