我正在尝试将我在 R 中组织的重要数据放入现有工作簿(xlsx 文件)的现有表中,数据管理完成后我有以下代码:
file <- "U:/Reporting/Template-Business_Report.xlsx"
xlApp <- COMCreate("Excel.Application")
xlWbk <- xlApp$Workbooks()$Open(Filename = file)
Sys.sleep(1)
sheet <- xlWbk$Worksheets("DataSet")
range <- sheet$Range("Table1")
range[["Value"]] <- asCOMArray(table)
newfile <- paste(sub("Template", state, file),format(Sys.time(), format = "%y%m%d %H%M"))
xlWbk$Save() # save the workbook
xlWbk$SaveAS(Filename =asCOMArray(newfile)) # save as a new workbook
xlApp$Quit()
但是,无论我对文件名做什么(我将在下面展示我尝试过的示例),我都会收到以下错误。
Error in .COM(x, name, ...) :
Cannot locate 0 name(s) Workbooks in COM object (status = -2147418111)
该文件存在,它只是不起作用。我想知道它是否打开(在后台),这就是它抛出错误的原因,但它也不会让我关闭它。
我也尝试:
file <- "U:\\Template-Business_Report.xlsx"
file <- "Template-Business_Report.xlsx"
以及这个对于xlWbk
。
xlWbk <- xlApp$Workbooks()$Open(Filename = file , 0, TRUE)
为什么 RDCOMClient 找不到我的文件?