Maison > développement back-end > C++ > Comment formater des colonnes Excel en décimales lors de l'exportation à partir de C# ?

Comment formater des colonnes Excel en décimales lors de l'exportation à partir de C# ?

Susan Sarandon
Libérer: 2025-01-07 12:03:41
original
305 Les gens l'ont consulté

How to Format Excel Columns as Decimals When Exporting from C#?

Formatage des colonnes Excel en décimal lors de l'exportation depuis C

Pour formater des colonnes spécifiques d'un fichier Excel en décimal lors de l'exportation depuis C#, vous pouvez utiliser la méthode suivante :

using OfficeOpenXml;
using OfficeOpenXml.Style;
using DataTable dt;

public void ExportToExcel(DataTable dt, string FileName)
{
    // Create a new Excel package.
    using (ExcelPackage excelPackage = new ExcelPackage())
    {
        // Create a new worksheet and load the data from the DataTable into it.
        ExcelWorksheet ws = excelPackage.Workbook.Worksheets.Add(FileName);
        ws.Cells["A1"].LoadFromDataTable(dt, true);

        // Apply number formatting to the specified columns (Actual Estimated Price and Approved Estimated Price in this example).
        int[] decimalColumns = { 1, 2 };
        foreach (int col in decimalColumns)
        {
            ws.Cells[ws.Dimension.Start.Row, col, ws.Dimension.End.Row, col].Style.Numberformat.Format = "0.00";
        }

        // Other formatting and cleanup code as needed...

        // Convert the Excel package to a byte array and send it to the browser.
        byte[] bin = excelPackage.GetAsByteArray();
        // ...
    }
}
Copier après la connexion

En plus du formatage décimal, vous pouvez également fusionner les cellules d'en-tête et définir d'autres options de formatage à l'aide du Bibliothèque OfficeOpenXML. L'exemple de code ci-dessus montre comment effectuer ces opérations, telles que la fusion des cellules d'en-tête CustomerName et la définition de la ligne d'en-tête en gris avec du texte en gras :

const int headerRow = 1;

ws.Cells[headerRow, 1, headerRow, 2].Merge = true;
ws.Cells[headerRow, 1].Value = "CustomerName";

// ...

for (int col = 1; col <= ws.Dimension.End.Column; col++)
{
    // Make all columns just a bit wider.
    ws.Column(col).Width = ws.Column(col).Width + 1;

    var cell = ws.Cells[headerRow, col];
    
    // Format the header cells
    cell.Style.Font.Bold = true;
    cell.Style.Fill.PatternType = ExcelFillStyle.Solid;
    cell.Style.Fill.BackgroundColor.SetColor(ColorTranslator.FromHtml("#BFBFBF"));
}
Copier après la connexion

Avec ces personnalisations, votre fichier Excel exporté aura le format souhaité. formatage des colonnes décimales et des cellules d'en-tête.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal