Write data into a specific workbook sheet

2020-03-27 06:48发布

I have a data frame e.g.

a=1:10 
b=31:40
c=data.frame(a=a,b=b)

and I will need to write this data frame into a specific Excel sheet ("Sheet1").

I am using WriteXLS now but this function always overrides the entire excel file and thus deletes other sheets. How can I append to the sheet without overwriting previous entries?

标签: r excel
3条回答
甜甜的少女心
2楼-- · 2020-03-27 07:06

You can simply write into a new sheet of an existing Excel file without modifiying the existing sheets or any other information by doing it this way:

library(xlsx)
a=1:10 
b=31:40
c=data.frame(a=a,b=b)

write.xlsx(c, "existing_Excel_file.xlsx", sheetName="New sheet name",  append=TRUE)

Remember to set the append argument of write.xlsx to TRUE and make sure the Excel file you are writing in to is in your current working Directory.

查看更多
三岁会撩人
3楼-- · 2020-03-27 07:25

This will add a new named sheet to an existing Excel workbook without altering existing sheets:

# create data in R
a = 1:10 
b = 31:40
c0 = data.frame(a=a,b=b)

#  write data object 'c0' to existing Excel file 
# 'Book1.xlsx' into a new sheet called 'Sheet1'
library(XLConnect)
writeWorksheetToFile(file = "C:/.../Book1.xlsx", data = c0, sheet = "Sheet1")

Note that if the workbook already has a Sheet1 then this function would silently overwrite it. So you'll need to make sure your sheet names are unique.

查看更多
家丑人穷心不美
4楼-- · 2020-03-27 07:28

Try with xlsx package. You have the function write.xlsx() which allows you to specify a name sheet and you can complete an existing excel.

查看更多
登录 后发表回答