Saber el numero de registros devuelto por un recordset tipo ADO Para saber el número de registros de un RecordSet on RecordCount, éste debe ser de tipo STATIC o KEYSET. La forma más sencilla de solventarlo es crearlo del lado cliente (ya que todos los cursores del lado cliente son estáticos). Por otro lado, hay cuatro tipos de cursor del lado servidor: ForwardOnly (o manguera de bombero): Es un cursor "sólo hacia adelante", que realmente devuelve los registros uno a uno al proveedor de OLE DB. Es extremadamente rápido, aunque tiene el problema (solventado parcialmente por ADO) de que sólamente admite una consulta activa por conexión, esto ADO lo solventa creando una conexión temporal de forma transparente (aunque toca mucho las pelotas hacerlo en el contexto de una transacción). al ser el predeterminado, debes estar usando este tipo. Estáticos: Es similar al anterior, pero permite recuperación hacia atrás. Los datos no muestran los cambios realizados por otros usuarios mientras está abierto el cursor, ya que son almacenados temporalmente en la caché de la librería de cursores de ADO. Si se desean recuperar un número determinado de filas hay que especificarlo en la propiedad CacheSize. KeySet (conjunto de claves): Permite ver los cambios realizados por otros usuarios, pero no los registros nuevos añadidos. Esto es así porque se almacenan las claves de los registros en la caché de ADO. Cuando se navega por los registros, ADO navega por las claves almacenadas, y el proveedor va a buscar los datos del registro a la base de datos, con lo cual se refrescan los datos de la caché. Dinamicos: Basado en el cursor de conjunto de claves, es el mismo modelo con la diferéncia de que cada vez que se solicita otro conjunto de datos, se vuelve a crear el conjunto de claves. De esta forma permite visualizar incluso los registros añadidos por otros usuarios. Tiene el inconveniente de ser el de peor rendimiento (normal, no?). Piensa que NO TODOS LOS PROVEEDORES ADMITEN ESTOS CURSORES, de modo que si intentas abrir un cursor no soportado por tu motor de base de datos, no fallarà (No error), pero se abrirá un cursor del tipo más parecido al solicitado (esto a veces es un problema).