Visão geral da biblioteca Angular Excel

    A Infragistics Angular Excel Library permite que você trabalhe com dados de planilha usando objetos de planilha familiares do Microsoft® Excel® como workbook, Worksheet, Cell, Formula e muitos mais. A Infragistics Angular Excel Library facilita a representação dos dados do seu aplicativo em uma planilha do Excel, bem como a transferência de dados do Excel para o seu aplicativo.

    Angular Excel Library Example

    Dependencies

    Ao instalar o pacote do Excel, o pacote principal também deve ser instalado.

    npm install --save igniteui-angular-core
    npm install --save igniteui-angular-excel
    

    Component Modules

    A biblioteca Angular Excel requer os seguintes módulos:

    // app.module.ts
    import { IgxExcelModule } from 'igniteui-angular-excel';
    
    @NgModule({
        imports: [
            // ...
            IgxExcelModule,
            // ...
        ]
    })
    export class AppModule {}
    

    Modules Implementation

    A Biblioteca do Excel contém 5 módulos que você pode usar para limitar o tamanho do pacote do seu aplicativo:

    • IgxExcelCoreModule– Contém o modelo de objeto e grande parte da infraestrutura do Excel
    • IgxExcelFunctionsModule– Contém a maioria das funções para avaliações de fórmulas, como Sum, Average, Min, Max, etc. A ausência deste módulo não causará problemas com a análise de fórmulas se a fórmula for calculada. Por exemplo, se você aplicar uma fórmula como “=SUM(A1:A5)” e solicitar o Valor da célula, você obterá um erro #NAME! retornado. Isso não é um lançamento de exceção – é um objeto que representa um erro específico, pois as fórmulas podem resultar em erros.
    • IgxExcelXlsModule– Contém a lógica de carregamento e salvamento para arquivos do tipo xls (e relacionados) – ou seja, os WorkbookFormats relacionados ao Excel97to2003.
    • IgxExcelXlsxModule– Contém a lógica de carregamento e salvamento para arquivos do tipo xlsx (e relacionados) – ou seja, os Excel2007 relacionados e StrictOpenXml WorkbookFormats.
    • IgxExcelModule– Isso faz referência aos outros 4 módulos e, basicamente, garante que toda a funcionalidade esteja carregada/disponível.

    Supported Versions of Microsoft Excel

    A seguir está uma lista das versões suportadas do Excel.**

    • Microsoft Excel 97

    • Microsoft Excel 2000

    • Microsoft Excel 2002

    • Microsoft Excel 2003

    • Microsoft Excel 2007

    • Microsoft Excel 2010

    • Microsoft Excel 2013

    • Microsoft Excel 2016

    Load and Save Workbooks

    Agora que o módulo Biblioteca do Excel foi importado, o próximo passo é carregar uma pasta de trabalho.

    No trecho de código a seguir, uma classe ExcelUtility externa é usada para salvar e carregar uma workbook.

    Para carregar e salvar objetos workbook, você pode utilizar o método save do objeto workbook real, bem como seu método estático Load.

    import { Workbook } from "igniteui-angular-excel";
    import { WorkbookSaveOptions } from "igniteui-angular-excel";
    import { WorkbookFormat } from "igniteui-angular-excel";
    import { ExcelUtility } from "ExcelUtility";
    
    var workbook = ExcelUtility.load(file);
    ExcelUtility.save(workbook, "fileName");
    

    Managing Heap

    Devido ao tamanho da Biblioteca do Excel, é recomendável desabilitar a geração do mapa de origem.

    Modifique angular.json definindo a opção vendorSourceMap em architect => build => options e em serve => options:

        "architect": {
            "build": {
              "builder": "...",
              "options": {
                "vendorSourceMap": false,
                "outputPath": "dist",
                "index": "src/index.html",
                "main": "src/main.ts",
                "tsConfig": "src/tsconfig.app.json",
                      // ...
              },
                  // ...
            },
            "serve": {
              "builder": "...",
              "options": {
                "vendorSourceMap": false,
                "browserTarget": "my-app:build"
              },
                  // ...
            },
            // ...
          }
    

    API References