One of the most overlooked and underused methods of the ADO object is GetRows(). This will quickly retrieve your recordset as a bi-dimensional array in the form of Array(columns,rows). While you still have to use nested loops to build your HTML table (which is conceptually the same as working with a recordset using Do While NOT recordset.EOF – Loop scenario) you will have greatly reduced the data access time (critical in busy dynamic Web applications) and improved your overall application speed.