EasyXLS

How to export List to Excel in Classic ASP

EasyXLS Excel library can be used to export Excel files in Classic ASP. The library is a COM+ component that works without MS Excel installed.

Step 1: Download and install EasyXLS Excel Library for COM+

To download the trial version of EasyXLS Excel Library, press the below button:

Download EasyXLS™ Excel Library for Classic ASP

If you already own a license key, you may login and download EasyXLS from your account.

Step 2: Verify if EasyXLS is registered

Check if EasyXLS component is present in Component Services.

Step 3: License file setup

Step required for EasyXLS v9.0 or later.

If you are using a trial, generate a trial license file from EasyXLS trials page. The trial license is valid for 30-days.

If you own a license key, you may login to the account that purchased the license and generate the license file from:
https://www.easyxls.com/my-orders

Setup the license file into your project using these guidelines.

Step 4: Run ASP code that exports List to Excel

Execute the following ASP code that exports List to Excel.

<%@ Language=VBScript %>

<!-- #INCLUDE FILE="Styles.inc" -->

<%
'=====================================================================
' Tutorial 01
'
' This tutorial shows how to export list to Excel file in Classic ASP. 
' The list contains data from a SQL database.
' The cells are formatted using a predefined format.
'=====================================================================

response.write("Tutorial 01<br>")
response.write("----------<br>")

' Create an instance of the class that exports Excel files
Set workbook = Server.CreateObject("EasyXLS.ExcelDocument")

' Create the database connection
Dim objConn
Set objConn = Server.CreateObject("ADODB.Connection")
objConn.ConnectionString = "Provider=SQLOLEDB;Server=(local);Database=northwind;User ID=sa;Password=;"
objConn.Open

' Query the database
Dim sQueryString
sQueryString = "SELECT TOP 100 CAST(Month(ord.OrderDate) AS varchar) + '/' + " & _
               "CAST(Day(ord.OrderDate) AS varchar) + '/' + " & _
               "CAST(year(ord.OrderDate) AS varchar) AS 'Order Date', " & _
               "P.ProductName AS 'Product Name', O.UnitPrice AS Price, " & _
               "CAST(O.Quantity AS varchar) AS Quantity, " & _
               "O.UnitPrice * O. Quantity AS Value " & _
               "FROM Orders AS ord, [Order Details] AS O, Products AS P " & _
               "WHERE O.ProductID = P.ProductID AND O.OrderID = ord.OrderID"
Dim objRS
Set objRS = Server.CreateObject("ADODB.Recordset")
objRS.Open sQueryString, objConn

' Create the list that stores the query values
Dim lstRows 
Set lstRows = CreateObject("EasyXLS.Util.List")

' Add the report header row to the list
Dim lstHeaderRow 	
Set lstHeaderRow = Server.CreateObject("EasyXLS.Util.List")
lstHeaderRow.addElement("Order Date")
lstHeaderRow.addElement("Product Name")
lstHeaderRow.addElement("Price")
lstHeaderRow.addElement("Quantity")
lstHeaderRow.addElement("Value")
lstRows.addElement(lstHeaderRow)

' Add the query values from the database to the list
Do Until objRS.EOF = True
    Set RowList = Server.CreateObject("EasyXLS.Util.List")
    RowList.addElement("" & objRS("Order Date"))
    RowList.addElement("" & objRS("Product Name"))
    RowList.addElement("" & objRS("Price"))
    RowList.addElement("" & objRS("Quantity"))
    RowList.addElement("" & objRS("Value"))
    lstRows.addElement(RowList)
    objRS.MoveNext
Loop

' Create an instance of the class used to format the cells
Dim xlsAutoFormat
Set xlsAutoFormat = Server.CreateObject("EasyXLS.ExcelAutoFormat")
xlsAutoFormat.InitAs(AUTOFORMAT_EASYXLS1)

' Export list to Excel file
response.write("Writing file: C:\Samples\Tutorial01 - export List to Excel.xlsx<br>")
workbook.easy_WriteXLSXFile_FromList_2 "C:\Samples\Tutorial01 - export List to Excel.xlsx", _
                                        lstRows, xlsAutoFormat, "Sheet1"

' Confirm export of Excel file
if workbook.easy_getError() = "" then
    response.write("File successfully created.")
else
    response.write("Error encountered: " + workbook.easy_getError())
end if

' Close database connection
objRS.Close
Set objRS = Nothing
objConn.Close
Set objConn = Nothing

' Dispose memory
workbook.Dispose  
%>

Overloaded methods
For methods with same name but different parameters, only the first method overload retains the original name. Subsequent overloads are uniquely renamed by appending to the method name '_2', '_3', etc (method, method_2, method_3), an integer that corresponds to the order of declaration that can be found in EasyXLS.h, a file that comes with EasyXLS installation.

EasyXLS Excel components:

.NET
Excel Library for Classic ASP
full COM+ version to import, export or convert Excel files
Excel Writer for Classic ASP
COM+ version to create and export Excel files
Express Excel Writer for Classic ASP
limited COM+ version to create and export Excel files in predefined formats
Download EasyXLS™ Excel Component for Classic ASP

File formats:

MS Excel 97 - 2003
MS Excel 2007 - 2019
MS Excel 2021
Office 365
XLSXXLSMXLSBXLS
XMLHTMLCSVTXT