Excel: поиск данных в скрытых ячейках (без их удаления)

У меня есть функция поиска, которая выглядит так:

public static int FindRowThatContains(Excel.Worksheet ws, string what) { int result = 0; Excel.Range rng = ws.Cells.Find(what, Type.Missing, Excel.XlFindLookIn.xlValues, Excel.XlLookAt.xlWhole, Type.Missing, Excel.XlSearchDirection.xlNext, false, Type.Missing, Type.Missing); if (rng != null) result = rng.Row; return result; } 

Это работает, когда ячейка, содержащая данные, которые я ищу, не скрыта, но она терпит неудачу, когда искомая ячейка отсутствует.

Есть ли способ включить скрытые ячейки в поиск?

Спасибо

Попробуйте XlFindLookIn.xlFormulas вместо XlFindLookIn.xlValues .

Метод Range.Find позволяет реплицировать диалог поиска в Excel. При выборе формул вместо значений в диалоговом окне поиска найдется скрытая ячейка.

Конечно, это может вызвать другие проблемы, если вы также не хотите искать в формулах, но используя этот метод, это выглядит как единственный способ.

  • Отображение документа Microsoft Office в элементе управления WPF
  • Запись в файл Excel с VB.net, когда вы не знаете название диапазона
  • Доступ к библиотеке Interop.office.excel из веб-приложения asp.net
  • Использование библиотеки Interop для создания веб-сервера на стороне Excel
  • Сортировка строк Excel по алфавиту в F # (Office.Interop)
  • Доступ к таблице в таблице Excel с использованием C #
  • C # чтение / запись .xlsm файлов
  • Excel-считыватель возвращает нулевое значение без причины c #
  • Как получить шрифт рабочего листа Excel по умолчанию?
  • Предотвращение открытия Excel при создании файла excel с помощью interop
  • F # Excel UsedRange не имеет свойств или методов
  • Давайте будем гением компьютера.