使用 C# Interop 在 Excel 列中过滤两个特定日期之间的日期

Filter Dates Between Two Specific Dates In an Excel Column using C# Interop

只是尝试使用 c# 过滤 Excel 中的列。
我的重点是根据两个日期过滤列。

Input_1 :从日期 (dd-mmm-yy) 例如:01-Dec-18

Input_2:迄今为止 (dd-mmm-yy) 例如:10-Dec-18

Excel 列包含 dd-mm-yyyy 中的随机日期(例如:07-11-2018)

如何在此列中应用过滤器,以便我可以在 Input_1 和 Input_2

提到的日期内修改列日期

我尝试对列应用过滤器的内容:

excelRange.AutoFilter(excelDATESColumn_Number,FromDateInput_1,Excel.XlAutoFilterOperator.xlAnd,Missing.Value, true);

仍然没有帮助! 我开始想,不可能通过 Interop 来做到这一点!!

以下代码对我有用。您只需将附加参数传递给 AutoFilter 方法。

DateTime dt1 = new DateTime(2018, 11, 06);
DateTime dt2 = new DateTime(2018, 11, 13);
var r = excelRange.AutoFilter(3, ">=" + dt1.ToOADate(), Excel.XlAutoFilterOperator.xlAnd, "<=" + dt2.ToOADate());

注意,我必须将日期转换为 OADate 才能正常工作。