Como definir formatos de dados de células no Excel

Como definir formatos de dados de células em C# com IronXL

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronXL permite formatar células do Excel com formatos de dados embutidos como moeda, porcentagens, datas e formatos de números personalizados definindo a propriedade FormatString em células ou intervalos sem dependências de Interop.

Início rápido: Aplicar formatação integrada a uma única célula em uma linha

Este exemplo mostra como criar uma nova planilha do Excel e aplicar uma formatação integrada a uma célula específica usando a API do IronXL. Nenhuma dependência de Interop é necessária – basta definir FormatString e salvar.

  1. Instale IronXL com o Gerenciador de Pacotes NuGet

    PM > Install-Package IronXl.Excel
  2. Copie e execute este trecho de código.

    IronXl.WorkBook book = IronXl.WorkBook.Create(); book.DefaultWorkSheet["B2"].FormatString = IronXl.Formatting.BuiltinFormats.Currency2;
  3. Implante para testar em seu ambiente de produção.

    Comece a usar IronXL em seu projeto hoje com uma avaliação gratuita

    arrow pointer


Como faço para definir formatos de dados de células no Excel?

A propriedade FormatString pode ser acessada tanto por meio de células quanto de intervalos. Portanto, é possível definir formatos de dados para células, colunas, linhas individuais e qualquer intervalo selecionado. Essa flexibilidade torna o IronXL particularmente poderoso quando você precisa trabalhar com arquivos do Excel em C# sem interoperabilidade .

A formatação de dados é essencial para apresentar informações de forma clara em planilhas. Seja na criação de relatórios financeiros com valores monetários, dados científicos com casas decimais precisas ou análises baseadas em datas, a formatação adequada garante que seus dados sejam legíveis e profissionais. O IronXL simplifica esse processo, fornecendo acesso direto ao mecanismo de formatação do Excel por meio de uma API simples.

:path=/static-assets/excel/content-code-examples/how-to/set-cell-data-format.cs
using IronXL;
using IronXL.Formatting;
using System;
using System.Linq;

// Create a new workbook
WorkBook workBook = WorkBook.Create();
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Set the data format to 12300.00%
workSheet["A1"].Value = 123;
workSheet["A1"].FormatString = BuiltinFormats.Percent2;

// Set the data format to 123.0000
workSheet["A2"].Value = 123;
workSheet["A2"].FormatString = "0.0000";

// Set data display format to range
DateTime dateValue = new DateTime(2020, 1, 1, 12, 12, 12);
workSheet["A3"].Value = dateValue;
workSheet["A4"].Value = new DateTime(2022, 3, 3, 10, 10, 10);
workSheet["A5"].Value = new DateTime(2021, 2, 2, 11, 11, 11);

IronXL.Range range = workSheet["A3:A5"];

// Set the data format to 1/1/2020 12:12:12
range.FormatString = "MM/dd/yy h:mm:ss";

workBook.SaveAs("dataFormats.xlsx");
$vbLabelText   $csharpLabel
Planilha do Excel mostrando células formatadas: valores percentuais, numéricos e de data/hora em diferentes formatos de exibição.

Como posso definir os valores das células como strings sem conversão?

Ao definir o valor no IronXL, use StringValue em vez de Value para atribuir diretamente o valor exato à célula sem conversão automática. Isso funciona como colocar um apóstrofo antes do valor da célula no Excel. Essa técnica é particularmente útil ao trabalhar com códigos de produtos, números de telefone ou outros dados que devem permanecer como texto. Para manipulação de strings mais avançada, veja como escrever valores do Excel em .NET .

:path=/static-assets/excel/content-code-examples/how-to/write-excel-net-assign-stringvalue.cs
// Assign value as string
workSheet["A1"].StringValue = "4402-12";
$vbLabelText   $csharpLabel

Como faço para usar os formatos integrados no IronXL?

A biblioteca IronXL oferece uma variedade de cadeias de formato predefinidas que podem ser acessadas através da classe IronXl.Formatting.BuiltinFormats para formatar células do Excel. Isso permite personalizar a forma como os dados são exibidos em suas planilhas do Excel. Esses formatos integrados abrangem os cenários de negócios mais comuns e são compatíveis com todas as versões do Excel.

Ao criar planilhas programaticamente, aplicar uma formatação consistente é crucial para manter padrões profissionais em todos os seus documentos. A classe BuiltinFormats fornece mais de 30 padrões de formato pré-configurados que correspondem às opções de formatação padrão do Excel.

:path=/static-assets/excel/content-code-examples/how-to/set-cell-data-format-builtin-formats.cs
using IronXL;
using IronXL.Formatting;

// Create a new workbook
WorkBook workBook = WorkBook.Create();
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Use builtin formats
workSheet["A1"].Value = 123;
workSheet["A1"].FormatString = BuiltinFormats.Accounting0;

workBook.SaveAs("builtinDataFormats.xlsx");
$vbLabelText   $csharpLabel

Quais formatos de dados integrados estão disponíveis?

Para o tipo Duration, os valores de entrada são representados em dias. Por exemplo, 1 dia equivale a 24 horas, e 1,05 dias equivalem a 25 horas e 12 minutos. Isso é particularmente útil ao trabalhar com dados do Excel que envolvem controle de tempo ou gerenciamento de projetos. Aqui estão os tipos de formato disponíveis:

Planilha do Excel mostrando formatos de números predefinidos com valores de entrada e saídas formatadas para vários tipos de dados.

Qual a função de cada tipo de formato?

  • General: Formato padrão exibindo números sem formatação específica.
  • Duration1: Mostra a duração em minutos e segundos como "mm:ss."
  • Duration2: Mostra a duração em horas, minutos e segundos como "[h]:mm:ss."
  • Duration3: Mostra a duração em minutos, segundos e milissegundos como "mm:ss.0."
  • Accounting0: Formato de contabilidade sem decimais, parênteses para negativos como "#,##0_);(#,##0)."
  • Accounting0Red: Formato de contabilidade sem decimais, vermelho para negativos como "#,##0_);Red."
  • Accounting2: Formato de contabilidade com dois decimais, parênteses para negativos como "#,##0.00;(#,##0.00)."
  • Accounting2Red: Formato de contabilidade com dois decimais, vermelho para negativos como "#,##0.00_);Red."
  • Time1: Formato de 12 horas com AM/PM como "h:mm AM/PM."
  • Time2: Formato de 12 horas com segundos e AM/PM como "h:mm:ss AM/PM."
  • Time3: Formato de 24 horas sem segundos como "h:mm."
  • Time4: Formato de 24 horas com segundos como "h:mm:ss."
  • ShortDate: Formato de data curta como "m/d/yy."
  • ShortDateAndTime: Formato de data e hora curta como "m/d/yy h:mm."
  • LongDate1: Data longa com mês, dia, ano como "d-mmm-yy."
  • LongDate2: Data longa com dia e mês abreviado como "d-mmm."
  • LongDate3: Data longa com mês abreviado e ano como "mmm-yy."
  • Fraction1: Valores fracionários com um dígito como "# ?/?."
  • Fraction2: Valores fracionários com dois dígitos como "# ??/??."
  • Scientific1: Notação científica com um decimal como "##0.0E+0."
  • Scientific2: Notação científica com dois decimais como "0.00E+00."
  • Percent: Percentual sem decimais como "0%."
  • Percent2: Percentual com dois decimais como "0.00%."
  • Currency0: Moeda sem decimais, parênteses para negativos como "$#,##0_);($#,##0)."
  • Currency0Red: Moeda sem decimais, vermelho para negativos como "$#,##0_);Red."
  • Currency2: Moeda com dois decimais, parênteses para negativos como "$#,##0.00;($#,##0.00)."
  • Currency2Red: Moeda com dois decimais, vermelho para negativos como "$#,##0.00_);Red."
  • Thousands0: Números com separador de milhar, sem decimais como "#,##0."
  • Thousands2: Números com separador de milhar, dois decimais como "#,##0.00."
  • Number0: Números sem decimais como "0."
  • Number2: Números com dois decimais como "0.00."
  • Text: Formato de texto simples como "@."

A formatação de dados e a formatação de números no Excel controlam como números, datas, horas e outros dados são exibidos nas células, melhorando a legibilidade e garantindo a precisão dos dados. Com os formatos de dados, você pode apresentar informações em formatos específicos, como porcentagens ou moedas. Da mesma forma, os formatos de número permitem personalizar as casas decimais e as opções de exibição.

Como aplicar vários formatos a diferentes intervalos?

Em aplicações do mundo real, muitas vezes é necessário aplicar formatos diferentes a várias partes da planilha. Este exemplo demonstra a formatação de um relatório financeiro com múltiplos tipos de dados. Essa abordagem é particularmente útil ao exportar para o Excel em C# a partir de bancos de dados ou outras fontes de dados.

using IronXL;
using IronXl.Formatting;
using System;

// Create a financial report with multiple formats
WorkBook workBook = WorkBook.Create();
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Headers
workSheet["A1"].Value = "Financial Report Q4 2023";
workSheet["A1"].Style.Font.Bold = true;

// Revenue section with currency formatting
workSheet["A3"].Value = "Revenue";
workSheet["B3"].Value = 2500000;
workSheet["B3"].FormatString = BuiltinFormats.Currency0;

// Growth percentage
workSheet["A4"].Value = "YoY Growth";
workSheet["B4"].Value = 0.157;
workSheet["B4"].FormatString = BuiltinFormats.Percent2;

// Date formatting
workSheet["A6"].Value = "Report Date";
workSheet["B6"].Value = DateTime.Now;
workSheet["B6"].FormatString = BuiltinFormats.LongDate1;

// Apply accounting format to expense columns
IronXl.Range expenseRange = workSheet["B8:B12"];
expenseRange.FormatString = BuiltinFormats.Accounting2Red;

// Save the formatted report
workBook.SaveAs("FinancialReport_Q4_2023.xlsx");
using IronXL;
using IronXl.Formatting;
using System;

// Create a financial report with multiple formats
WorkBook workBook = WorkBook.Create();
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Headers
workSheet["A1"].Value = "Financial Report Q4 2023";
workSheet["A1"].Style.Font.Bold = true;

// Revenue section with currency formatting
workSheet["A3"].Value = "Revenue";
workSheet["B3"].Value = 2500000;
workSheet["B3"].FormatString = BuiltinFormats.Currency0;

// Growth percentage
workSheet["A4"].Value = "YoY Growth";
workSheet["B4"].Value = 0.157;
workSheet["B4"].FormatString = BuiltinFormats.Percent2;

// Date formatting
workSheet["A6"].Value = "Report Date";
workSheet["B6"].Value = DateTime.Now;
workSheet["B6"].FormatString = BuiltinFormats.LongDate1;

// Apply accounting format to expense columns
IronXl.Range expenseRange = workSheet["B8:B12"];
expenseRange.FormatString = BuiltinFormats.Accounting2Red;

// Save the formatted report
workBook.SaveAs("FinancialReport_Q4_2023.xlsx");
$vbLabelText   $csharpLabel

Este exemplo mostra como diferentes tipos de formato se combinam para criar documentos financeiros profissionais. Para opções de formatação mais avançadas, incluindo formatação condicional , você pode expandir ainda mais esses conceitos.

Ao trabalhar com grandes conjuntos de dados ou criar relatórios programaticamente, a formatação consistente torna-se fundamental. O sistema de formatação do IronXL integra-se perfeitamente com outros recursos, como funções matemáticas e edição de fórmulas , permitindo que você crie soluções de relatórios totalmente automatizadas.

Para desenvolvedores que estão migrando do Office Interop ou buscando melhor desempenho, o sistema de formatação do IronXL oferece uma vantagem significativa. Ao contrário das abordagens tradicionais, você pode formatar milhares de células de forma eficiente, sem a sobrecarga de interoperabilidade COM. Para saber mais sobre as melhores práticas de automação do Excel, explore nossa documentação completa do Excel .

Perguntas frequentes

Como formatar células do Excel em C# sem usar Interop?

O IronXL oferece uma maneira simples de formatar células do Excel sem dependências de interoperabilidade. Você pode usar a propriedade FormatString em células ou intervalos para aplicar formatos predefinidos, como moeda, porcentagens, datas e formatos de número personalizados. Basta criar ou abrir uma pasta de trabalho com o IronXL e definir a propriedade FormatString para o formato desejado.

Qual a maneira mais rápida de aplicar a formatação de moeda a uma célula?

Com o IronXL, você pode aplicar a formatação de moeda com apenas uma linha de código. Depois de criar uma planilha, basta usar: `book.DefaultWorkSheet["B2"].FormatString = IronXl.Formatting.BuiltinFormats.Currency2;` Isso aplica o formato de moeda integrado com 2 casas decimais à célula B2.

Posso formatar várias células ao mesmo tempo?

Sim, o IronXL permite formatar células individuais, colunas inteiras, linhas ou qualquer intervalo selecionado por meio da propriedade FormatString. Essa flexibilidade facilita a aplicação de formatação consistente em várias células da sua planilha do Excel sem precisar iterar por cada célula individualmente.

Como faço para impedir a conversão automática de dados ao definir os valores das células?

O IronXL oferece a propriedade StringValue para definir valores de células como strings sem conversão automática. Em vez de usar a propriedade Value, use StringValue para atribuir o valor exato à célula. Isso funciona de forma semelhante a colocar um apóstrofo antes do valor da célula no Excel e é particularmente útil para códigos de produtos, números de telefone ou outros dados que devem permanecer como texto.

Quais opções de formato integradas estão disponíveis?

O IronXL oferece uma coleção abrangente de strings de formatação predefinidas por meio da classe IronXl.Formatting.BuiltinFormats. Isso inclui vários formatos de moeda, formatos de data e hora, exibição de porcentagem, notação científica e formatos de número personalizados, permitindo que você personalize a forma como os dados são exibidos em suas planilhas do Excel.

Preciso instalar o Microsoft Excel para usar os recursos de formatação de células?

Não, o IronXL opera de forma independente, sem exigir dependências do Microsoft Excel ou de interoperabilidade. A biblioteca inclui seu próprio mecanismo de formatação que manipula diretamente arquivos do Excel, tornando-a ideal para ambientes de servidor ou sistemas onde o Excel não está instalado.

Curtis Chau
Redator Técnico

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais ...

Leia mais

A PHP Error was encountered

Severity: Notice

Message: Undefined index: IronXl.Excel

Filename: helpers/counter_helper.php

Line Number: 85

Backtrace:

File: /var/www/ironpdf.com/application/helpers/counter_helper.php
Line: 85
Function: _error_handler

File: /var/www/ironpdf.com/application/views/main/sections/ready_to_started_202509.php
Line: 12
Function: getTotalDonwloadNumber

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 489
Function: view

File: /var/www/ironpdf.com/application/controllers/Products/Howto.php
Line: 31
Function: render_products_view

File: /var/www/ironpdf.com/index.php
Line: 292
Function: require_once

A PHP Error was encountered

Severity: Notice

Message: Undefined index: IronXl.Excel

Filename: helpers/counter_helper.php

Line Number: 85

Backtrace:

File: /var/www/ironpdf.com/application/helpers/counter_helper.php
Line: 85
Function: _error_handler

File: /var/www/ironpdf.com/application/views/main/sections/ready_to_started_202509.php
Line: 19
Function: getTotalDonwloadNumber

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 489
Function: view

File: /var/www/ironpdf.com/application/controllers/Products/Howto.php
Line: 31
Function: render_products_view

File: /var/www/ironpdf.com/index.php
Line: 292
Function: require_once

Pronto para começar?
Nuget Downloads 1,890,100 | Versão: 2026.3 acaba de ser lançado

A PHP Error was encountered

Severity: Notice

Message: Undefined index: IronXl.Excel

Filename: helpers/counter_helper.php

Line Number: 85

Backtrace:

File: /var/www/ironpdf.com/application/helpers/counter_helper.php
Line: 85
Function: _error_handler

File: /var/www/ironpdf.com/application/views/main/sections/still_scrolling_202512.php
Line: 17
Function: getTotalDonwloadNumber

File: /var/www/ironpdf.com/application/views/products/sections/three_column_docs_page_structure.php
Line: 71
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/views/products/how-to/index.php
Line: 2
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 552
Function: view

File: /var/www/ironpdf.com/application/controllers/Products/Howto.php
Line: 31
Function: render_products_view

File: /var/www/ironpdf.com/index.php
Line: 292
Function: require_once

A PHP Error was encountered

Severity: Notice

Message: Undefined index: IronXl.Excel

Filename: helpers/counter_helper.php

Line Number: 85

Backtrace:

File: /var/www/ironpdf.com/application/helpers/counter_helper.php
Line: 85
Function: _error_handler

File: /var/www/ironpdf.com/application/views/main/sections/still_scrolling_202512.php
Line: 24
Function: getTotalDonwloadNumber

File: /var/www/ironpdf.com/application/views/products/sections/three_column_docs_page_structure.php
Line: 71
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/views/products/how-to/index.php
Line: 2
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 552
Function: view

File: /var/www/ironpdf.com/application/controllers/Products/Howto.php
Line: 31
Function: render_products_view

File: /var/www/ironpdf.com/index.php
Line: 292
Function: require_once

Still Scrolling Icon

Ainda está rolando a tela?

Quer provas rápidas? PM > Install-Package IronXl.Excel
executar um exemplo Veja seus dados se transformarem em uma planilha.