Um bestimmte Spalten einer Excel-Datei beim Exportieren aus C# als Dezimalformat zu formatieren, können Sie die folgende Methode verwenden:
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(); // ... } }
Zusätzlich zur Dezimalformatierung können Sie mit OfficeOpenXML auch Kopfzellen zusammenführen und andere Formatierungsoptionen festlegen Bibliothek. Das obige Codebeispiel zeigt, wie Sie diese Vorgänge ausführen, z. B. das Zusammenführen der Header-Zellen „CustomerName“ und das Festlegen der Header-Zeile auf Grau mit fettem Text:
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")); }
Mit diesen Anpassungen wird Ihre exportierte Excel-Datei das gewünschte haben Formatierung sowohl für Dezimalspalten als auch für Kopfzellen.
Das obige ist der detaillierte Inhalt vonWie formatiere ich Excel-Spalten beim Exportieren aus C# als Dezimalzahlen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!