用Java设置Excel背景色?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用Java设置Excel背景色?相关的知识,希望对你有一定的参考价值。
Excel表格中原本就有背景色,但是Java中一赋值就会把背景色覆盖,怎么让背景色不覆盖,还是原本的背景色?
excel表格的样式都是通过创建cellstyle实现的,HSSFCellStyle cellStyle =workbook.createCellStyle();设置背景色的代码cellStyle.setFillBackgroundColor(HSSFColor.LIGHT_YELLOW.index);
再将想要设置背景色的单元格cell.setStyle(cellStyle); 参考技术A 不能设置单元格样式嘛?或者先获取原来格子的样式保存起来,赋完值后再把样式复制过去,本回答被提问者采纳
Java 为 Excel 中的行设置交替背景色
在制作Excel表格时,通过将数据表中上下相邻的两行用不同的背景色填充,可以使各行的数据看起来更清楚,避免看错行,同时也能增加Excel表格的美观度。本文将介绍如何在Java程序中为 Excel 奇数行和偶数行设置交替背景色。
使用工具:Free Spire.XLS for Java (免费版)
Jar文件导入方法
方法一:
下载最新的Free Spire.XLS for Java包并解压缩,然后从lib文件夹下,将Spire.Xls.jar包导入到你的Java应用程序中。(导入成功后如下图所示)
方法二:
通过Maven仓库安装导入。详细的操作步骤请参考链接(https://www.e-iceblue.cn/licensing/install-spirepdf-for-java-from-maven-repository.html)
Java代码示例
import com.spire.xls.*; import java.awt.*; public class ConditionalFormatting { public static void main(String[] args) { //创建Workbook对象 Workbook workbook = new Workbook(); //加载一个Excel文档 workbook.loadFromFile("C:\\\\Users\\\\Administrator\\\\IdeaProjects\\\\XLS\\\\sample.xlsx"); //获取一个工作表 Worksheet sheet = workbook.getWorksheets().get(0); //获取有数据的区域 CellRange dataRange = sheet.getAllocatedRange(); //使用条件格式将偶数行的背景色设为浅灰色 ConditionalFormatWrapper format1 = dataRange.getConditionalFormats().addCondition(); format1.setFirstFormula("=MOD(ROW(),2)=0"); format1.setFormatType(ConditionalFormatType.Formula); format1.setBackColor(Color.lightGray); //使用条件格式将奇数行的背景色设为黄色 ConditionalFormatWrapper format2 = dataRange.getConditionalFormats().addCondition(); format2.setFirstFormula("=MOD(ROW(),2)=1"); format2.setFormatType(ConditionalFormatType.Formula); format2.setBackColor(Color.yellow); //保存文档 workbook.saveToFile("交替背景色.xlsx", ExcelVersion.Version2016); } }
交替背景色效果图:
以上是关于用Java设置Excel背景色?的主要内容,如果未能解决你的问题,请参考以下文章