Kiedy eksportuję tabelę do Excela, używając własnej ag-grid exportDataAsExcel()
wynikowy program Excel zawiera daty jako Generał typ danych zamiast Data.
[]
Użyłem tego:
exportDataAsExcel({
processCellCallback: ({col, val}) => {( /*date value formatting here*/ )}
})
sformatować oba Date
, string
z odpowiednim formatowaniem daty (DD/MM/YYYY)
ale nie mogę sprawić, by program Excel poprawnie rozpoznał te komórki jako Data zamiast Generał
Jest to powtarzalne dzięki przykładom eksportu programu Excel na ich stronie internetowej: https://www.ag-grid.com/javascript-grid-excel/?framework=all#gsc.tab=0
Odpowiedzi:
0 dla odpowiedzi № 1Musisz zrobić trzy rzeczy:
Podczas tworzenia Ag-Grid musisz dodać
var excelStyles = [ { id: "ExcelDateTime", dataType: "dateTime", numberFormat: { format: "yyyy-mm-dd hh:mm:ss;;;" } }, { id: "ExcelDate", dataType: "dateTime", numberFormat: { format: "yyyy-mm-dd;;;" } } ]; ... <AgGridReact ... //such as rowData={rowData} excelStyles={excelStyles} ... />;
W przypadku kolumn będących datami:
colDef.cellClass = "ExcelDateTime";
lub
colDef.cellClass = "ExcelDate";
w stosownych przypadkach oraz
w Twoim
processCellCallback
, sformatuj datę jako datę ISO:"yyyy-mm-ddTHH:MM:ss"