我有一个包含一些数据和图表的现有工作簿。
我正在使用openxlsx
添加最新数据,并希望编辑现有的命名范围以反映这一点(图表使用此命名区域)。
我尝试使用writeData
和createNamedRegion
来执行此操作,但收到错误消息“(...)中的错误:名称为'named_region'的命名区域已存在!”
library(openxlsx)
filename <- 'test.xlsx'
wb <- createWorkbook()
addWorksheet(wb, sheetName = 'test')
writeData(wb, sheet='test', x=data.frame(a=1:3,b=2:4), startCol=1, startRow=1,
colNames=T, rowNames=F, name='named_region')
saveWorkbook(wb, file=filename, overwrite=TRUE)
wb <- loadWorkbook(file = filename)
writeData(wb, sheet='test', x = data.frame(a=4:5,b=5:6),
startRow=5, colNames=F, rowNames=FALSE, keepNA=FALSE) # ok
# not ok
# writeData(wb, sheet='test', x = data.frame(a=4:5,b=5:6),
# startRow=5, colNames=F, rowNames=FALSE, keepNA=FALSE, name='named_region')
# createNamedRegion(wb, sheet='test', cols=1, rows=2:6, name='named_region')
saveWorkbook(wb, file=filename, overwrite=TRUE)