Color Excel Rows
library(openxlsx)
output_subjects <- c(names(kit_res_ls), names(kit_res_bl_ls))
output_sites <- sort(unique(substr(output_subjects, 4, 6)))
wbs <- lapply(output_sites, function(x) createWorkbook(paste0("site", x)))
names(wbs) <- output_sites
rows_color <- lapply(high_res_ls, function(x) which(x %in% 'shadeRow'))
names(rows_color) <- names(kit_res_ls)
rows_color_bl <- lapply(high_res_bl_ls, function(x) which(x %in% 'shadeRow'))
names(rows_color_bl) <- names(kit_res_bl_ls)
htStyle <- createStyle(fgFill='#F29836')
csv_cols <- c("SCRNO", "RAND.DATE", "KITID", "DISPENSE.DATE", "RETURN.DATE", "REMAIN")
addsheet <- function(x, color_rows) {
scrno <- x[1, ]$SCRNO
site <- substr(scrno, 4, 6)
wb <- wbs[[site]]
x[, csv_cols] <- lapply(x[, csv_cols], as.character)
if (! scrno %in% sheets(wb)) {
addWorksheet(wb, scrno)
writeData(wb, sheet=scrno, x[, csv_cols], rowNames = FALSE)
setColWidths(wb, sheet=scrno, cols=1:length(csv_cols), widths = c(rep(13, 5), 20))
}
addStyle(wb, sheet=scrno, htStyle, rows=color_rows + 1, cols=1:length(csv_cols),
gridExpand = TRUE)
}
res_bl <- mapply(addsheet, kit_res_bl_ls, rows_color_bl, SIMPLIFY = FALSE)
res <- mapply(addsheet, kit_res_ls, rows_color, SIMPLIFY = FALSE)
lapply(names(wbs), function(x) saveWorkbook(wbs[[x]], paste0("site", x, ".xlsx"), overwrite =
TRUE))