【发布时间】:2017-06-28 16:00:38
【问题描述】:
我有一个预先格式化的 Microsoft Excel 工作簿,用作模板。然后,我想将我的 data.table 从 R 粘贴到工作簿中,保持列标题和格式不变。
这对于 XLConnect 包应该是可行的:
# Load library
library(XLConnect)
# Load pre-formatted MS Excel workbook
wb <- loadWorkbook("Myworkbook.xlsx")
# Write data.table to existing worksheet excluding column names:
writeWorksheet(wb, mydt, sheet = "Datasheet1", startRow = 3, startCol = 1, header = FALSE)
# Save the data to the workbook
saveWorkbook(wb)
但是,当我运行它时,我收到以下 java 错误:
Error: NoSuchMethodError (Java): org.apache.poi.ss.usermodel.Cell.setCellType(Lorg/apache/poi/ss/usermodel/CellType;)V
我使用 R 版本 3.4.0 和 RStudio 版本 1.0.143 以及 XLConnect_0.2-13 和 rJava_0.9-8,Java 版本是 Windows 7 操作系统上的 Java 8 Update 66(64 位)和 Microsoft办公室 2010。
任何关于为什么这可能不起作用的想法将不胜感激 - 我可以从头开始创建工作簿和工作表,因此似乎只是将数据附加到现有工作表会受到影响。
【问题讨论】:
-
不知道,但如果你厌倦了 Java 错误,你可以试试openxlsx,它不会使用它。
-
谢谢 - 会尝试一下,我都是为了放弃依赖于 java 的解决方案,因为它们似乎总是会导致问题
-
openxlsx 运行良好 - 将保留此问题以查看是否有人知道 java 错误,但为我的工作流程切换到 openxlsx