Excel Interop Автофильтр по дате - PullRequest
0 голосов
/ 15 сентября 2018

У меня есть приложение Windows Forms (Framework 4.6.1), которое использует Microsoft Office Interop для открытия и обработки листа Excel.Мне нужно установить фильтр для конкретной даты.Мое приложение должно работать с различными форматами даты.

enter image description here

У меня есть свойство, определенное ниже.Это свойство возвращает действительные даты в диапазоне 01/01/2014 - 01/01/2019

protected DateTime CurrentFileDate 
{ 
   get 
   {
      // Some implementation to retrieve a date 
   }
}

Я пытаюсь установить автофильтр в столбце даты, используя значение даты (не строку)) :

var ws = xlWorkbook.ActiveSheet as Excel.Worksheet;
var r = ws.Cells[1, 1] as Excel.Range;
r.AutoFilter(3, CurrentFileDate.ToOADate());

Этот подход не работает, так как Excel интерпретирует значение как двойное, и ни одна из строк не соответствует фильтру.

r.AutoFilter(3, CurrentFileDate); неработать, поскольку она интерпретирует дату как строку (которая не обязательно соответствует формату даты, используемому в Excel)

Есть идеи, как установить этот фильтр?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...