EasyXLS

How to create conditional formatting in ColdFusion

EasyXLS Excel library can be used to export Excel files in ColdFusion. The library works without MS Excel installed.

Step 1: Download EasyXLS Excel Library for Java

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

Download EasyXLS™ Excel Library for Coldfusion

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

Install the downloaded EasyXLS installer for v8.6 or earlier.

Step 2: 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 3: Add EasyXLS library to CLASSPATH in ColdFusion Administator

EasyXLS.jar must be included to class path for Java runtime environment.

EasyXLS.jar can be found:
- Inside the downloaded archive at Step 1 for EasyXLS v9.0 or later
- Under installation path for EasyXLS v8.6 or earlier, in "Lib" folder.

Add EasyXLS library to CLASSPATH

Another solution is to add EasyXLS.jar to "lib" folder from ColdFusion installation path.

Step 4: Run ColdFusion code that creates conditional formatting in Excel cells

Execute the following ColdFusion code that exports an Excel file and sets conditional formatting to a range. The first step is to set the range where the conditional formatting will be applied, then set the formatting options.

<!--
=============================================================
Tutorial 14

This tutorial shows how to create an Excel file in ColdFusion  
having a sheet and conditional formatting for cell ranges.
=============================================================
-->

<!-- Constants Classes -->
<cfobject type="java" class="EasyXLS.Constants.DataType" name="DataType" action="CREATE">
<cfobject type="java" class="EasyXLS.Constants.ConditionalFormatting" name="ConditionalFormatting" action="CREATE">
<cfobject type="java" class="EasyXLS.Constants.FontSettings" name="FontSettings" action="CREATE">
<cfobject type="java" class="EasyXLS.Constants.Border" name="Border" action="CREATE">
<cfobject type="java" class="java.awt.Color" name="Color" action="CREATE">

Tutorial 14<br>
----------<br>

<!-- Create an instance of the class that exports Excel -->
<cfobject type="java" class="EasyXLS.ExcelDocument" name="workbook" action="CREATE">

<!-- Add a worksheet -->
<cfset ret = workbook.easy_addWorksheet("Sheet1")>

<!-- Get the table of data for the first worksheet -->
<cfset xlsTab = workbook.easy_getSheet("Sheet1")>
<cfset xlsTable = xlsTab.easy_getExcelTable()>

<!-- Add data in cells -->
<cfloop from="0" to="5" index="i">
    <cfloop from="0" to="3" index="j">
        <cfif ((i lt 2) and (j lt 2))>
            <cfset xlsTable.easy_getCell(evaluate(i), evaluate(j)).setValue("12")>
        <cfelseif ((j eq 2) and (i lt 2))>
            <cfset xlsTable.easy_getCell(evaluate(i), evaluate(j)).setValue("1000")>
        <cfelse>
            <cfset xlsTable.easy_getCell(evaluate(i), evaluate(j)).setValue("9")>
        </cfif>
        <cfset xlsTable.easy_getCell(evaluate(i), evaluate(j)).setDataType(DataType.NUMERIC)>
    </cfloop>
</cfloop>

<!-- Set conditional formatting -->
<cfset xlsTab.easy_addConditionalFormatting("A1:C3", ConditionalFormatting.OPERATOR_BETWEEN, 
                            "=9", "=11", true, true, Color.RED)>

<!-- Set another conditional formatting -->
<cfset xlsTab.easy_addConditionalFormatting("A6:C6", ConditionalFormatting.OPERATOR_BETWEEN, 
                            "=COS(PI())+2", "", Color.ORANGE)>
<cfset xlsTab.easy_getConditionalFormattingAt("A6:C6").getConditionAt(0).setConditionType(
                            ConditionalFormatting.CONDITIONAL_FORMATTING_TYPE_EVALUATE_FORMULA)>

<!-- Export Excel file -->
Writing file C:\Samples\Tutorial14 - conditional formatting in Excel.xlsx<br>
<cfset ret = workbook.easy_WriteXLSXFile("C:\Samples\Tutorial14 - conditional formatting in Excel.xlsx")>

<!-- Confirm export of Excel file -->
<cfset sError = workbook.easy_getError()>
<cfif (sError is "")>
    <cfoutput>
        File successfully created.
    </cfoutput>
<cfelse>
    <cfoutput>
        Error encountered:  #sError#
    </cfoutput>
</cfif>

<!-- Dispose memory -->
<cfset workbook.Dispose()>

EasyXLS Excel libraries:

Java
Excel Library for ColdFusion
full Java version to import, export or convert Excel files
Excel Writer for ColdFusion
Java version to create and export Excel files
Download EasyXLS™ Excel Library for ColdFusion

File formats:

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