Hallo!
Ich entwickle gerade ein Desktop-Programm (Win Forms), welches mir bestimmte Daten in eine Excel-Datei speichert, wobei die Excel-Datei mehrere Reiter besitzt.
Eigentlich recht einfach; dachte ich mir jedenfalls.
Am Anfang exportiere ich die Daten in den ersten Excel-Reiter; das funktioniert auch wunderbar:
Microsoft.Office.Interop.Excel.Application excelApp;
Microsoft.Office.Interop.Excel.Workbook workbook;
excelApp = new Microsoft.Office.Interop.Excel.Application();
workbook = excelApp.Workbooks.Open(Properties.Settings.Default.Path_Sharepoint_ExcelFile, 0, true, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "\t", false, true, 0, true, 1, 0);
Microsoft.Office.Interop.Excel.Worksheet actualSheet = workbook.Worksheets[1];
Microsoft.Office.Interop.Excel.Range usedRange = actualSheet.UsedRange;
Microsoft.Office.Interop.Excel.Range cell;
cell = usedRange.Cells[5, 5] as Microsoft.Office.Interop.Excel.Range;
cell.Value2 = tbProjekt.Text;
//und so weiter....
Sobald der erste Reiter fertig befüllt ist, soll auf den zweiten Reiter gewechselt werden. Und genau hier beginnt das Problem: Das Programm läuft zwar fehlerfrei, jedoch wird der zweite Reiter nie befüllt.
actualSheet = workbook.Worksheets[2];
usedRange = actualSheet.UsedRange;
cell = usedRange.Cells[9,5] as Microsoft.Office.Interop.Excel.Range;
cell.Value2 = "Test"; //wird nicht geschrieben!!!
Wäre toll, wenn mir jemand einen kleinen Hinweisen geben könnte, wo der Fehler begraben liegt.
Vielen Dank im Voraus
Hallo,
hast du denn mal (mit dem Debugger) überprüft, welchen Bereich UsedRange hat?
Bzw. warum benutzt du nicht direkt Worksheet.Cells?