2017-08-14 41 views
0

我試圖使用XLConnect包中的writeWorkBook函數將某些數據從R數據框(Shipments)複製到excel文件。但是,它不會將任何內容複製到Excel文件中。執行不會導致控制檯中出現任何錯誤/警告。它只是不復制。R中的writeWorkSheet函數不會將值粘貼到Excel中

我已經加載庫XLConnect並確保我沒有加載庫XLSX。由於我認爲這可能是一個問題,因此要複製的列已被鍵入數據幀。

wbnames是一個額外的事情。我直接在writeWorkBook中寫了表名,它應該工作得很好。即使wbnames沒有發生過的任何變化。

我原本打算將內容複製到宏文件,然後運行來自R本身的宏文件,但它不工作。所以我認爲這可能是因爲宏文件,但該函數本身並不適用於.xlsx。

所以,不知道是什麼問題。如果我能在這裏得到一些幫助,將不勝感激。我錯過了什麼嗎?

library(XLConnect) 
library(RDCOMClient) 

xlApp <- COMCreate("Excel.Application") 
xlWbk <- xlApp$Workbooks()$Open(FILEPATH+FILENAME.XLSX) 
xlWb <- loadWorkbook(FILEPATH+FILENAME.XLSX) 
wbnames <- as.vector(getSheets(xlWb)) 

# Copy a column from the existing data frame and paste it to the first 
# sheet of the FILENAME.XLSX, starting at Row#6, no headers and no rownames: 
writeWorksheet(xlWb, as.data.frame(Shipments$SHIPMENT_ID), 
    sheet = wbnames[1], startRow = 6, header = F, rownames = NULL) 

回答

0

xlWb是R-對象包含該工作簿。看起來數據已寫入工作簿,這很好。但是,爲了以Excel格式查看,您仍然需要將工作簿保存到Excel。加入這行代碼後,你應該看到一個文件要求your_file_name.xlsx與您的數據在您的工作目錄:

XLConnect::saveWorkbook(xlWb, "your_file_name.xlsx") 
+0

非常感謝!我對R相對比較陌生。我的錯誤 - 像VBA調試模式那樣的處理步驟,我們在步驟執行後立即看到結果。 –

+1

如果是正確的,請接受答案。 – lebelinoz