Hallo zusammen,
komme nicht wirklich weiter möchte gerne in einer Excel Tabelle Werte suchen, doch von den momentanen 11300 Einträgen sind die letzten 300 relevant und das nur von Spalte(G).
Mein Ansatz sieht folgendermaßen aus:
C#-Code: |
private string inExcelSearch(string searchString)
{
string searchStrg = searchString;
Excel.Application xlApp = new Excel.Application();
Excel.Workbook xlWorkBook = xlApp.Workbooks.Open(@"C:\Users\Olaf\Desktop\WARENAUSGANG.2.xls");
Excel.Worksheet xlWorkSheet = xlWorkBook.Worksheets["Tabelle1"];
Excel.Range colRange = xlWorkSheet.Range[xlWorkSheet.Cells[7,(xlWorkSheet.UsedRange.Rows.Count-300)],(xlWorkSheet.Cells[7,(xlWorkSheet.UsedRange.Rows.Count)])]; ;
Excel.Range resultRange = colRange.Find(
What: searchStrg,
LookIn: Excel.XlFindLookIn.xlValues,
LookAt: Excel.XlLookAt.xlPart,
SearchOrder: Excel.XlSearchOrder.xlByRows,
SearchDirection: Excel.XlSearchDirection.xlNext
);
if (resultRange is null)
{
MessageBox.Show("Did not found " + searchStrg + " in column A");
return "false";
}
else
{
MessageBox.Show("gefunden");
return "true";
}
xlWorkBook.Close(false, Type.Missing, Type.Missing);
xlApp.Application.Quit();
}
|
bekomme aber den Bereich nicht definiert :-(
mit
C#-Code: |
Excel.Range colRange = xlWorkSheet.Columns("G:G");
|
klappt es schon, doch nur viel zu langsam, deshalb wollte ich es eingrenzen, bekomme es aber nicht hin.
Könnt ihr mir bitte helfen!?
DANKE!!!!