Поскольку вы пытаетесь выполнить поиск по «5000 записям», я предполагаю, что вы пытаетесь выполнить поиск по «значениям».
Для этого вы можете использовать «Range.Find» из API взаимодействия.
private void OpenExcelFile()
{
Excel.Application exlApp = new Microsoft.Office.Interop.Excel.Application();
if (exlApp == null)
{
MessageBox.Show("Excel app object could not be created");
}
else
{
exlFileSelector.FileName = @"*.xls";
if (exlFileSelector.ShowDialog() == DialogResult.OK)
{
Excel.Workbook wrkBook = exlApp.Workbooks.Open(exlFileSelector.FileName, 0, true, 5, "", "", true, Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, true, true);
Excel.Sheets sheetList = wrkBook.Sheets;
Excel.Range search = exlApp.get_Range("A1", "C5");
search.Find("FindMe", null, Excel.XlFindLookIn.xlValues, Excel.XlLookAt.xlWhole, Excel.XlSearchOrder.xlByRows, Excel.XlSearchDirection.xlNext, false, null, null);
}
}
}
Дополнительная информация:
Как выполнить поиск текста в диапазонах рабочих листов