1
После выполнения этого кодакак писать в XLSX и изменения формата ячеек
library(XLConnect)
template <- loadWorkbook (filename = "template.xlsx" , create = T)
createSheet (template , c("sheet1","sheet2"))
# setStyleAction(template,XLC$"STYLE_ACTION.NONE")
Data <- data.frame(
a = 1:10,
b = 11:20
)
setDataFormatForType(template, type = XLC$DATA_TYPE.NUMERIC, format = "0.00" )
# list22$`Brand Equity` <- as.numeric(list22$`Brand Equity`)
# list22$`Purchase Intent` <- as.numeric(list22$`Purchase Intent`)
csHeader <- createCellStyle(template, name = "header10")
setFillPattern(csHeader, fill = XLC$BORDER.DOUBLE)
setFillForegroundColor(csHeader, color = XLC$COLOR.DARK_RED)
# setCellFormula(object = template, sheet = (paste0("sheet",i)), row = c(2:4),col = c(1:3), formula = )
setCellStyle(template, sheet = "sheet1", row = 1,
col = c(1:2), cellstyle = csHeader)
setCellStyle(template, sheet = "sheet2", row = 1,
col = c(1:2), cellstyle = csHeader)
for (i in 1:2)
{
setColumnWidth(template, sheet = (paste0("sheet",i)), column = c(1:3), width = 15800)
writeWorksheet (template , data = Data, sheet = (paste0("sheet",i)), startRow = 1 , startCol = 1 ,
header = TRUE)
}
saveWorkbook (template)
Это, кажется, не передать мои аргументы о цвете клетки. Есть идеи ? Кроме того, есть ли способ написать преобразование чисел в процентах? Так, например, 1 будет 100%, 2 будет 200% и т.д. ...
Похоже, что вам нужно ** сначала ** запишите свои данные в ячейки, а ** затем ** установите стили ячеек, чтобы вы хотели. В настоящее время вы красиво стилизуете ячейки, а затем перезаписываете их стилями по умолчанию XLConnect для 'writeWorksheet()'. Другими словами, переместите свой цикл 'for' вверх сразу после вашего вызова на' setDataFormat() '. –