Excel Spalte im Währungsformat



  • Hallo,

    ich bin echt am verzweifeln, weil ich es nicht schaffe die Spalte ins Währungsformat zu bekommen.

    Liegt es vielleicht am Zeitpunkt, an dem ich das Format setze?
    Oder daran, dass ich nach dem Einlesen der Daten noch eine Überschrift in die 3. Zeile setzte (wobei ich ja erst am Zeile 4 formatiere)?

    Excel.Application oXL;
                    Excel._Workbook oWB;
                    Excel._Worksheet oSheet;
    
                    oXL = new Excel.Application();
    
                    oWB = (Excel._Workbook)(oXL.Workbooks.Add(Missing.Value));
                    oSheet = (Excel._Worksheet)oWB.ActiveSheet;
                    oSheet.PageSetup.Orientation = XlPageOrientation.xlPortrait;
    
                    Excel.Range rg5 = oSheet.get_Range("F4", "F" + row);
                    rg5.NumberFormat = "#,##0.00 €";
    
                    if (oWB.Worksheets.Count > 0)
                    {
                        oSheet = (Excel.Worksheet)oWB.Sheets[1];
    
                        for (int j = 0; j < grid.Columns.Count; j++)
                        {
                            for (int i = 0; i < grid.Rows.Count; i++)
                            {
                                if (grid[j, i].Value == null)
                                {
                                    oSheet.Cells[z, s] = "";
                                }
                                else
                                {
                                    oSheet.Cells[z, s] = grid[j, i].Value.ToString();
                                }
                                z++;
                                row++;
                            }
                            s++;
                            z = 4;
                        }
                    }
    
    rg5.NumberFormat = "#,##0.00 €"; // bringt am Ende aber auch nichts
    


  • Wobei ich festgestellt habe, dass selbst wenn ich "von Hand" in Excel die Daten formatiere, die Zahlen ebenfalls nciht korrekt angezeigt werden.

    Liegt vermutlich am Exportieren der Daten nach Excel?!
    Worauf müsste ich da achten? In der Datenquelle (GridView) hab ich die Spalte mit als Währung formatiert.

    dataGridView1.Columns[5].DefaultCellStyle.Format = "c";
    

Anmelden zum Antworten