Search code examples
javascriptangularag-gridexport-to-excelag-grid-angular

How to export multiple grids data into single excel file in the single sheet


i have multiple ag grids running under foreach loop , i want to perform excel export and all the data from multiple grids should be exported into single excel within the single sheet. Can someone help me on that . Any help on this will be helpful


Solution

  • Not sure that I understand your use case:

    1. if your AG Grid instances have different column definitions, then the best solution would be to use an external library which handles the export to excel
    2. if all your grid instances have the same column definitions and only the dataset(rowdata) is different, then you could: a. collect the data from all grids in a single colletion b. create a "headless" AG Grid instance on the fly, pass the columnDefs & rowData and use the exporting mechanism via the API:

        const gridOptions: GridOptions = {
          columnDefs, // shared column defs
          rowData, // aggregated data from all grid instances
        };
    
        const grid = new Grid(document.createElement('div'), gridOptions);
    
        gridOptions.api.exportDataAsExcel({
          sheetName: 'Sheet 1',
          fileName: fileName,
        });
    
        grid.destroy();