我遇到了以下问题。大量数据写入 Excel 文件。在写入的 excel 表中,我想将单元格颜色设置为非预定义值(这是写入单元格的数字的函数)。例如:给定单元格中的数字越高,单元格越绿。
我知道该软件包存在解决方案xlsx
(请参阅HERE和HERE)。但我已经XLConnect
在整个项目中使用,并且不想转换我目前拥有的所有代码。
目前,我使用以下代码设置单元格颜色:
# create the excel workbook
wb <- loadWorkbook("FILENAME.xls", create=TRUE)`
# Create a CellStyle with yellow solid foreground
CellColor <- createCellStyle(wb)
setFillPattern(CellColor, fill = XLC$"FILL.SOLID_FOREGROUND")
setFillForegroundColor(CellColor, color = XLC$"COLOR.YELLOW")
# apply the CellStyle to a given cell, here: (10,10)
setCellStyle(wb, sheet=SHEETNAME, row=10, col=10, cellstyle=CellColor)
# save the workbook
saveWorkbook(wb)
显然,有问题的部分是
color = XLC$"COLOR.YELLOW"
因为它不允许我设置我喜欢的颜色的 rgb 代码。尝试像
color = rgb(0.2,0.4,0.8)
失败。
第 91 页上的 XLConnect 文档仅说明了这一点
颜色通常通过 XLC 对象中的相应颜色常量指定。
没有说明如何使用 RGB 代码。