wxls <- function(x, file = "test", ...)
{
## Purpose: Write data tables to Excel (.xlsx) file.
## Require package "openxlsx".
## Arguments:
## x: a data frame or a list of data frames.
## file: a naked file name with no extension.
## ...: passed to "write.xlsx".
## Return: Generate an Excel (.xlsx) file.
## Author: Feiming Chen, Date: 6 Jun 2017, 15:11
## ________________________________________________
require(openxlsx)
f <- paste0(file, ".xlsx")
write.xlsx(x, file = f, asTable = TRUE,
creator = "Feiming Chen",
tableStyle = "TableStyleMedium2", ...)
}
if (F) { # Unit Test
df <- data.frame("Date" = Sys.Date()-0:4,
"Logical" = c(TRUE, FALSE, TRUE, TRUE, FALSE),
"Currency" = paste("$",-2:2),
"Accounting" = -2:2,
"hLink" = "https://CRAN.R-project.org/",
"Percentage" = seq(-1, 1, length.out=5),
"TinyNumber" = runif(5) / 1E9, stringsAsFactors = FALSE)
class(df$Currency) <- "currency"
class(df$Accounting) <- "accounting"
class(df$hLink) <- "hyperlink"
class(df$Percentage) <- "percentage"
class(df$TinyNumber) <- "scientific"
wxls(df)
wxls(list(A = df, B = df, C= df)) # write to 3 separate tabs with corresponding list names.
}
No comments:
Post a Comment