/ / Exportando para o Excel com formatação de célula adequada no AG-grid - javascript, excel, ag-grid

Exportando para o Excel com formatação de célula adequada em grade - javascript, excel, ag-grid

Quando eu exporto uma tabela para o Excel usando o próprio ag-grid exportDataAsExcel() o excel resultante contém datas como Geral tipo de dados em vez de Encontro.

[excel foto]

Eu usei isso:

exportDataAsExcel({
processCellCallback: ({col, val}) => {( /*date value formatting here*/ )}
})

formatar ambos Date, string com formatação de data adequada (DD/MM/YYYY) mas não consigo fazer com que o excel reconheça adequadamente essas células como Encontro ao invés de Geral

Isso é reproduzível com os exemplos de exportação do Excel em seu site: https://www.ag-grid.com/javascript-grid-excel/?framework=all#gsc.tab=0

Respostas:

0 para resposta № 1

Você precisa fazer três coisas:

  1. Ao instanciar o Ag-Grid, você precisa adicionar

    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}
    ...
    />;
    
  2. Para colunas com datas:

    colDef.cellClass = "ExcelDateTime";
    

    ou

    colDef.cellClass = "ExcelDate";
    

    conforme apropriado, e

  3. na tua processCellCallback, formate a data como uma data ISO: "yyyy-mm-ddTHH:MM:ss"