Я начал генерировать файлы XLSX вместо CSV через openxlsx . Однако в отношении фильтрации дат у меня другое поведение.
Я сгенерировал следующий фиктивный код:
library(openxlsx)
df <- data.frame(ID=c(1,2,3,4,5,6), Date=c("1900-01-12","2010-12-29","1934-03-17", "1989-09-19","1978-11-27","2010-01-13"))
write.csv(df, "dateTestCSV.csv")
# Create the workbook
wb = createWorkbook()
hs <- createStyle(fontColour = "#ffffff", fgFill = "#4F80BD",
halign = "center", valign = "center", textDecoration = "bold",
border = "TopBottomLeftRight")
addWorksheet(wb=wb, sheetName = "Test", gridLines=T, zoom=70)
writeData(
wb,
sheet = "Test",
x = df,
withFilter=T,
borders="all",
borderStyle="thin",
headerStyle=hs
)
setColWidths(wb, sheet = "Test", cols=1:ncol(df), widths = "auto")
openxlsx::saveWorkbook(wb, "dateTestXLSX.xlsx", overwrite=T)
Первый сгенерированный файл, dateTestCSV.csv , является файлом значений, разделенных запятыми. И это выглядит так:
![CSV file view](https://i.stack.imgur.com/xFwty.png)
Если я добавлю фильтр в столбец Дата, он будет выглядеть следующим образом:
![CSV Date column with filter](https://i.stack.imgur.com/Lh2Aq.png)
Однако, когда я создаю файл XSLX с фильтрами, такой фильтр выглядит следующим образом:
![XLSX Date column with filter](https://i.stack.imgur.com/fk6bW.png)
Видно, что Excel фильтрует по абсолютным значениям и не группирует даты по году, месяцу и / или дню.
Что я не так делаю?