在.COM(x,name,...)中获取&#34; <checkerrorinfo> 80020009错误:&#34;在R中访问excel文件时

时间:2018-02-01 10:41:28

标签: r rdcomclient openxlsx

我使用OpenxlsxRDCOMClient软件包自动执行了从R访问VBA宏的过程。以下是代码:

功能:

OpenExcel_5param <- function(directory,filename, MacroName, param1, param2, 
param3,param4, param5)
{

 # Open a specific workbook in Excel:
   data <- paste(c(directory,'/',filename,'.xlsm'), collapse = '')
   xlApp <- COMCreate("Excel.Application")
   xlWbk <- xlApp$Workbooks()$Open(data)

 # this line of code might be necessary if you want to see your spreadsheet:
   xlApp[['Visible']] <- TRUE 
   xlApp$Run(MacroName,param1,param2, param3, param4, param5)

 # Close the workbook and quit the app:
   xlWbk$Close(FALSE)
   xlApp$Quit()

 # Release resources:
   rm(xlWbk, xlApp)
   gc()
}

访问此功能的代码:

  

OpenExcel_5param(Common_folder,VBA_CodeFileName,&#34; ConsumptionValidation.MARM&#34;,r_extracts,&#34; 1. UniqueUPC_Nielsen&#34;,10000,original_files,&#34; MARM&#34;)

当我运行代码时,出现以下错误:

  

80020009
  .COM(x,name,...)中的错误:

当我第一次运行代码时,它工作正常。从第二次开始,它开始给我这个错误。相同的代码在另一台计算机上运行正常。在第三台计算机上,如果我保持excel文件打开,它可以正常工作,但在我的计算机上根本不工作。我尝试过不同版本的R,但没有帮助。

0 个答案:

没有答案