我可以使用XLConnect将模板工作簿中的单元格样式应用于新工作簿中的单元格吗?

时间:2016-04-28 21:18:12

标签: r xlconnect

我正在编写一些R代码,这些代码从许多Excel工作簿中读取工作表,识别符合特定条件的单元格,然后使用粗体字体保存这些相同的工作簿。因为这是一个效率工具,所以我不想进入我计划运行代码的每个工作簿,并添加自定义的“粗体”单元格样式。

我的计划是从模板工作簿中读取单元格样式:

bold <- XLConnect::getCellStyle(templateWB, "bold")

然后,我想使用模板工作簿中的样式在新工作簿中创建粗体单元格:

    XLConnect::setCellStyle(wb, sheet = sheetName, row= boldRow, col = boldCol, cellstyle = bold)

但是,尝试执行此操作会导致错误:

“错误:IllegalArgumentException(Java):此样式不属于提供的Workbook Stlyes Source。您是否尝试将样式从一个工作簿分配给不同工作簿的单元格?”

显然,我无法将单元格样式从一个工作簿应用到另一个工作簿中的工作表。有关R的解决方法的任何建议吗?

谢谢。

1 个答案:

答案 0 :(得分:1)

您导入的单元格样式来自templateWB,因此此单元格样式仅由该工作簿识别。您无法将此单元格样式应用于其他工作簿。

我有完全相同的问题并通过简单地在该工作簿中工作并使用wb <- templateWB bold <- XLConnect::getCellStyle(templateWB, "bold") XLConnect::setCellStyle(wb, sheet = sheetName, row= boldRow, col = boldCol, cellstyle = bold) 将其保存在其他地方来解决它。另一个应该起作用的选择是:

.ix