3
我有一個非常直接的問題,這是相當標準的我認爲。不幸的是我有一些困難找到正確的語法來解決它。我只想將數據(這裏是一個簡單的整數)寫入現有的Excel表格。R - XLSX:向現有的Excel表中添加一個值
我發現,一個很好的方法是使用包'xlsx'。
require(xlsx) # Load the xlsx package
接下來,我將不得不加載文件,並加載所有工作表。
wb <- loadWorkbook("test.excelfile.xls") # Load the xls file
sheets <- getSheets(wb) # load all sheet objects
然後我輸入值。這些是生成錯誤的行。
addDataFrame(data.frame(123), sheets[1]) # Error in addDataFrame(data.frame(123), sheets[1]) : attempt to apply non-function
addDataFrame(123, sheets[1]) # alternative try, same error
最後我保存工作簿。
saveWorkbook(wb, "test.excelfile.xls") # not checked yet because error occurs in line above
對我來說,已存在的xls文件不被破壞對我來說很重要。我想保留所有的工作表,VBA宏和表單元素。只有一些細胞應該從內部R.
改變非常感謝您的幫助,
馬蒂亞斯
難道你需要將數據幀添加到單元格?您只是提供工作表名稱,但您需要全部的範圍。 – 2014-09-29 12:28:11
如果它是一個單一的值,爲什麼你把它做成'dataframe'?只需取得您的單一值,然後使用任何Excel連接工具寫入您選擇的指定電子表格單元格。 – 2014-09-29 12:54:03
@ jbarker2160:你說得對。它只有一個單元格。因此,addDataFrame方法允許給出'StartRow'和'StartColumn'。默認情況下,它們都設置爲1.如果你不想寫入單元格(1,1),你可以簡單地改變它們。 – 2014-09-29 13:19:51