【发布时间】:2015-03-19 03:27:31
【问题描述】:
我正在使用包xlsx 版本:0.5.7 日期:2014-08-01。在 R 版本 3.0.1 (2013-05-16) 中——“Good Sport”平台:i386-w64-mingw32/i386(32 位)。
我有一个至少有 2 张纸(比如 A 和 B)的 xlsx 文件。我需要从 A 读取数据,对其进行编辑并将它们保存在 B 中。这必须定期完成。
我可以使用read.xlsx 从 A 读取数据。编辑数据框后,我想将其保存在同一个 xlsx 文件中的现有工作表 B 中。
我试试这条线
write.xlsx(down, paste0(root,'/registration reports/registration complete_WK.xlsx'), sheet="data_final", col.names=T, row.names=F, append=T, showNA=F)
但它给了我这个错误:
Error in `.jcall(wb, "Lorg/apache/poi/ss/usermodel/Sheet;", "createSheet", ` :
java.lang.IllegalArgumentException: The workbook already contains a sheet of this name
我需要多次替换现有的工作表。我该怎么做?
【问题讨论】:
-
这里是示例,转到文章底部:danganothererror.wordpress.com/2012/02/12/…
-
我认为
write.xlsx()不会覆盖现有工作表。你能读入整个.xlsx文件并重写所有工作表,包括你需要的任何新工作表吗? -
我们通常不支持在过时的 R 版本上“修复”问题。您有什么理由无法更新到 3.1.2 和匹配的包?
-
@CarlWitthoft 几个版本之后,“问题”仍然存在。这不是错误,而是阻止您覆盖工作表的理想行为
标签: java r excel overwrite r-xlsx