0

是否可以使用 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 
4

1 回答 1

1

因此,在您的目标语言中,这些是您需要的 Excel 对象:

  1. Excel.Application在像oXlApp这样的变量中创建一个实例
  2. 使用该Excel.Application对象打开您的目标工作簿:
    • 调用oXlApp Workbooks集合的Open方法,将文件名作为参数传递给 Open 方法
  3. 使用oxlAppSelection对象的属性返回 Excel对象Range
  4. 修改SelectionRange如下:

    1. 对Range的FormatConditions属性执行Delete方法
    2. 对Range的FormatConditions属性执行Add命令

      • 将这些参数传递给Add方法:
        • 类型:=xlExpression
        • 公式1:="=$B2<>$C2"
      • 设置第一个格式条件的此属性以设置单元格颜色
        • FormatConditions(1).Interior.ColorIndex = 36

    '

  5. 在工作簿上调用Save方法
  6. 清理在工作簿上调用Close方法,然后在oXlApp上退出最后释放内存!

Excel VBA中,我们会这样做:

activesheet.usedrange.select
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlExpression, Formula1:="=$B2<>$C2"
Selection.FormatConditions(1).Interior.ColorIndex = 36

这将首先选择使用的单元格,然后为 cols b 和 c 添加条件格式

另外,请参阅 StackOverFlow:Manipulate Excel from Jacob/Java

并查看JXL 指南

于 2013-05-09T10:57:52.157 回答