schnubber - Mo 30.04.12 11:57
Titel: variableninhalt in excel zellen eintragen
Hallo Leute,
Habe folgendes problem:
das ziel ist es den Inhalt einer variablen in eine zelle von excel zu schreiben, habe es so weit geschafft dass ich einen festgelegten Text eintragen lassen kann.
Habe eine Klasse wo ein dateiname in eine variable gespeichert wird und diesen namen würde ich gern dann in eine Zelle reinschreiben wollen, was sich als problematisch herausgestellt hat.
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49:
|
{ Excel.Workbooks objBooks; Excel.Sheets objSheets; Excel._Worksheet objSheet; Excel.Range range; try { objApp = new Excel.Application(); objBooks = objApp.Workbooks; objBook = objBooks.Add(Missing.Value); objSheets = objBook.Worksheets; objSheet = (Excel._Worksheet)objSheets.get_Item(1); range = objSheet.get_Range("A1", Missing.Value); range = range.get_Resize(1000, 5); string[,] saRet = new string[1000, 5]; for ( long zeile = 1; zeile < 1000; zeile++) { for (long spalte = 1; spalte < 5; spalte++) { saRet[zeile, spalte] = "|" + spalte.ToString(); } } range.set_Value(Missing.Value, saRet); objApp.Visible = true; } catch (Exception theException) { String errorMessage; errorMessage = "Error: "; errorMessage = String.Concat(errorMessage, theException.Message); errorMessage = String.Concat(errorMessage, " Line: "); errorMessage = String.Concat(errorMessage, theException.Source); MessageBox.Show(errorMessage, "Error"); } } |
Wichtig ist die zeile "
saRet[zeile, spalte] = "|" + spalte.ToString();"
Hier wird eine festgelegte zeichenkette reingeschrieben und eine long variable "spalte" die zur zeichenkette konvertiert wird.
Somit ist es mir nur möglich long variablen rein zu schreiben.
wie mache ich das mit string variablen?
Hier is der quellcode wo ich meinen dateinamen in eine string variable lege:
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| DirectoryInfo dirInfo = new DirectoryInfo(@"C:\Dokumente und Einstellungen\dp\Desktop\dateien"); FileInfo[] files = dirInfo.GetFiles("*.jpg"); foreach (FileInfo fiOutput in files) { string buffer=fiOutput.Name; } |
mats74 - Mo 30.04.12 14:41
Hallo schnubber
Ich habe dein Code ohne und mit einer Stringvariable ausprobiert und sehe eigentlich keine Probleme.
Auch mit einer Stringvariable:
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| String irgendeinwert = ""; DirectoryInfo dirinfo = new DirectoryInfo(@"C:\Temp\"); FileInfo[] files = dirinfo.GetFiles("*.txt"); foreach(FileInfo fiOutput in files) { irgendeinwert = fiOutput.Name.ToString(); } ... saRet[zeile, spalte] = "|" + irgendeinwert; ... |
Ansonsten habe ich dein Problem nicht verstanden, denn der Code funktioniert einwandfrei.