我尝试使用包xlsx
来读取模板的样式(格式),然后将数据从数据帧写入具有相同格式的.xlsx文件。我跟随了我能从软件包的Wiki中找到的最接近的例子。
问题在于,当我尝试从我的数据帧中写入数据时,它会以NULL形式出现,尽管我尝试编写的列的类与Wiki中的示例匹配,我的语法也是如此。
head(fer_sheet1[,1])
# [1] "HXXX3691X" "HXXX3789X" "HXXX3759X" "HXXX37350" "HXXX3722X" "HXXX3719X"
class(fer_sheet1[,1])
# [1] "character"
Final_Report_Formatted <- createWorkbook()
Contact_List <- createSheet(Final_Report_Formatted, "Contact List")
Contact_List_rows <- createRow(Contact_List, rowIndex = 1:43)
Contact_List_cells <- createCell(Contact_List_rows,
colIndex=1:length(fer_sheet1))
mapply(setCellValue, Contact_List_cells[1:43, 1], fer_sheet1[, 1])
# $`1`
# NULL
#
# $`2`
# NULL
#
# $`3`
# NULL
依此类推,一直到:
# $`41`
# NULL
#
# $`42`
# NULL
#
# $`43`
# NULL
我可以在没有包xlsx
的情况下轻松完成此操作,但我们的想法是继续使用他们的包,这样我可以在用数据填充之后应用模板工作簿中的格式。
有趣的是,我还使用内置的month.name
数据获取了NULL值,如示例所示:
mapply(setCellValue, Contact_List_cells[1:12, 1], month.name)
答案 0 :(得分:1)
我没有看到任何关闭/保存工作簿命令。通常这种操作就像将图形绘图写入文件......它需要一个完成功能。在这种情况下,将是:
saveWorkbook(Final_Report_Formatted, "myChosenWBName.xlsx")