This article demonstrates how to highlight the highest and lowest value in a cell rang through conditional formatting. You can also highlight the top 5 or bottom 5 values by passing 5 to setRank() method in the code snippet below.
import com.spire.xls.*;
import java.awt.*;
public class HighlightTopBottom {
public static void main(String[] args) {
//Create a Workbook object
Workbook workbook = new Workbook();
//Load the sample Excel file
workbook.loadFromFile("G:\\360MoveData\\Users\\Administrator\\Desktop\\sales report.xlsx");
//Get the first worksheet
Worksheet sheet = workbook.getWorksheets().get(0);
//Apply conditional formatting to range "B2:E5" to highlight the highest value
ConditionalFormatWrapper format1 = sheet.getCellRange("B2:E5").getConditionalFormats().addCondition();
format1.setFormatType(ConditionalFormatType.TopBottom);
format1.getTopBottom().setType(TopBottomType.Top);
format1.getTopBottom().setRank(1);
format1.setBackColor(Color.red);
//Apply conditional formatting to range "B2:E5" to highlight the lowest value
ConditionalFormatWrapper format2 = sheet.getCellRange("B2:E5").getConditionalFormats().addCondition();
format2.setFormatType(ConditionalFormatType.TopBottom);
format2.getTopBottom().setType(TopBottomType.Bottom);
format2.getTopBottom().setRank(1);
format2.setBackColor(Color.yellow);
//Save the document
workbook.saveToFile("output/HighestLowestValue.xlsx", ExcelVersion.Version2016);
}
}
