将多个data.table保存为现有.xlsx文件中的新工作表

时间:2015-07-31 16:55:36

标签: r shiny xlconnect

在R Shiny-App中我试图制作一个下载处理程序,将一些data.tables(存储为被动值)保存在现有的.xlsx文件中,每个文件都在一个新的工作表中,使用XLConnect和我不知道自己做错了什么。谢谢您的帮助。 例如:

output$saveDTs <- downloadHandler(
    filename = paste0( codeNr, "file_.xlsx"),
    content = function( file ) {
      if ( (is.null(values$dt1)) && (is.null(values$dt2)) & (is.null(values$dt3)) ) { return() }

      fname <- paste0(file, ".xlsx")
      wb <- loadWorkbook( fname, create = TRUE)

      if(!is.null(values$dt1 ) ){ 
        dt1 <- values$dt1
        createSheet( wb, "DT1" )
        writeWorksheet( wb, dt1, sheet = "DT1") 
      }
      if(!is.null(values$dt2 ) ){ 
        dt2 <- values$dt2
        createSheet( wb, "DT2" )
        writeWorksheet( wb, dt2, sheet = "LDT2") 
      }
      if(!is.null(values$dt3 ) ){ 
        dt3 <- values$dt3
        createSheet( wb, "DT3" )
        writeWorksheet( wb, dt3, sheet = "DT3") 
      }
      saveWorkbook(wb)
      file.rename( fname, file )
    }
  )

0 个答案:

没有答案