是否可以使用 JXL 或 Apache POI 或其他方式对 Excel 文件执行一些条件格式? API java 就像宏 VBA 一样?
' Mise en forme couleur pour différence
For i = 3 To fin Step 1
Range("C" & i).Select
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlNotEqual, _
Formula1:="=B" & i
Selection.FormatConditions(1).Interior.ColorIndex = 6
最佳答案
因此,在您的目标语言中,这些是您需要的 Excel 对象:
- 在 oXlApp 等变量中创建
Excel.Application
实例 - 使用
Excel.Application
对象打开目标工作簿:- 调用 oXlApp Workbooks 集合的 Open 方法,将文件名作为参数传递给 Open 方法
- 使用 oxlApp 对象的
Selection
属性返回 ExcelRange
对象 修改
选择
或范围
如下:- 对 Range 的 FormatConditions 属性执行 Delete 方法
对Range的FormatConditions属性执行Add命令
- 将这些参数传递给 Add 方法:
- 类型:=xlExpression
- 公式1:=“=$B2<>$C2”
- 设置第一个格式条件的此属性以设置单元格颜色:
- FormatConditions(1).Interior.ColorIndex = 36
- 将这些参数传递给 Add 方法:
'
- 调用工作簿上的保存方法
- 在 Workbook 上调用 Close 方法进行清理,然后在 oXlApp 上调用 Quit,最后 ,释放内存!
在Excel VBA中,我们会做这样的事情:
activesheet.usedrange.select
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlExpression, Formula1:="=$B2<>$C2"
Selection.FormatConditions(1).Interior.ColorIndex = 36
这将首先选择使用的单元格,然后为 b 和 c 列添加条件格式
另外,请参阅这个 StackOverFlow: Manipulate Excel from Jacob/Java
看看 JXL Guide
关于java - Excel 文件的条件格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16459561/