Feedback

C# - Excel mit COM Interop auslesen

Veröffentlicht von am 1/25/2008
(2 Bewertungen)
Liest ein Excelsheet über Interop.Excel.dll libary (COM) aus.
Zur Info: mit OleDB wurden in meinem Programm nur 256 Zeichen aus einer Excel Zelle gelesen- mit Com nicht.

Bitte nicht vergessen: Excel dll muss referenziert werden!

object missing = missing.value
 //define Excel
            Excel.Application XlsApp;
            Excel._Workbook Workbook;
            Excel._Worksheet WorkSheet;

object missing = System.Reflection.Missing.Value;

//Get a new workbook.
            Workbook = (Excel._Workbook)( XlsApp.Workbooks._Open(ExcelDBPath + "\\ExcelSheet.xls" , missing , missing , missing , missing , missing , missing , missing , missing , missing , missing , missing , missing) );
            WorkSheet = (Excel._Worksheet)Workbook.ActiveSheet;
			//Excel wird sichtbar / false = unsichtbar
			XlsApp.Visible= false
			
			
//read row by row for example 15000 rows - column A to F:
 for ( int i = 2 ; i < 15000 ; i++ )
    {
		//Auswahl bestimmen
        Excel.Range rngID = WorkSheet.get_Range("A" + i.ToString() , missing);
        Excel.Range rngDE = WorkSheet.get_Range("B" + i.ToString() , missing);
        Excel.Range rngUK = WorkSheet.get_Range("C" + i.ToString() , missing);
        Excel.Range rngES = WorkSheet.get_Range("D" + i.ToString() , missing);
        Excel.Range rngFR = WorkSheet.get_Range("E" + i.ToString() , missing);
        Excel.Range rngPL = WorkSheet.get_Range("F" + i.ToString() , missing);
	
	  //Aus Excelrange  rngDE den Wert auslesen (hier nur ein kurzer Auszug, macht wenig Sinn aber demonstriert die Funktionsweise):
	  string excelString = Convert.ToString(rngDE.Value2)
	
	
	}


			//Schliessen
			Workbook.Save();
            XlsApp.Workbooks.Close();
            XlsApp.Quit();

Kommentare zum Snippet

 

Logge dich ein, um hier zu kommentieren!