首页 > 后端开发 > C++ > 从 C# 导出时如何将 Excel 列格式化为小数?

从 C# 导出时如何将 Excel 列格式化为小数?

Susan Sarandon
发布: 2025-01-07 12:03:41
原创
234 人浏览过

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

从 C 导出时将 Excel 列格式化为十进制

要在从 C# 导出时将 Excel 文件的特定列格式化为十进制,可以使用以下方法:

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();
        // ...
    }
}
登录后复制

除了小数格式之外,您还可以使用 OfficeOpenXML 库合并标题单元格并设置其他格式选项。上面的代码示例演示了如何执行这些操作,例如合并 CustomerName 标题单元格并将标题行设置为灰色并带有粗体文本:

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"));
}
登录后复制

通过这些自定义,导出的 Excel 文件将具有所需的内容小数列和标题单元格的格式。

以上是从 C# 导出时如何将 Excel 列格式化为小数?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板