0

如果您打开Excel 2016的新实例并以以下格式输入日期,8/15它将在 Excel 中输出如下:

excel图片

Excel 的格式菜单将其标识为Custom > d-mmm. 现在让我们继续讨论这个问题的 R 部分。我将创建一个简单的数据框:

df <- data.frame(col1 = as.Date(c("2021-01-01", "2021-02-15")), col2 = c(3, 9))
#>         col1 col2
#> 1 2021-01-01    3
#> 2 2021-02-15    9

我想将此数据框写入Excel文件,并默认为Excel的 Custom > d-mmm日期格式(如上图)。

我的第一次尝试非常通用,并使用 writexl 包:

library(writexl)
write_xlsx(df, "df.xlsx")

excel图片

Excel最终将这些日期读取为Excel 的 yyyy-mm-dd格式,而不是Custom > d-mmm我想要的格式。让我变得更复杂一点,并尝试使用 openxlsx 包来获得我想要的东西:

library(openxlsx)
options(xlsx.date.format = "d-mmm")
write.xlsx(df, file = "df.xlsx", asTable = TRUE)

excel图片

这一次,输出是Excel格式Date > *3/14/2012。如何以Excel格式获取要在Excel中识别的日期?输出如下所示,不应涉及任何手动Excel步骤: Custom > d-mmm

excel图片

4

1 回答 1

0

根据文档应用全局格式化语法

options(openxlsx.dateFormat = "d-mmm")

文档:

https://rdrr.io/cran/openxlsx/man/openxlsx.html
于 2021-02-12T21:40:58.750 回答