我遇到了以下问题。大量数据被写入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 documentation仅告知
通常通过XLC对象的相应颜色常量指定颜色。
没有关于如何使用RGB代码的解释。