Hinzufügen eines bestimmten Autofilters zu einer Spalte

Ich versuche, einen Filter für eine Spalte festzulegen. So habe ich es in Interop gemacht:

private void CheckMasterFile(string path) {
    var xlApp = new Excel.Application();
    var xlWorkbook = xlApp.Workbooks.Open(path);
    Excel._Worksheet xlWorksheet = xlWorkbook.Sheets[1];

    foreach (var project in projects) {
        if (string.IsNullOrEmpty(project.ProjectID.Value)) {
            continue;
        }

        var xlRange = xlWorksheet.UsedRange;
        if (xlWorksheet.AutoFilter != null) {
            xlWorksheet.AutoFilterMode = false;
        }
        xlRange.AutoFilter(Field: 2, Criteria1: project.ProjectID.Value);
        var result = xlRange.SpecialCells(Excel.XlCellType.xlCellTypeVisible, Type.Missing);//only shows filtered values
        double sum = 0;

        foreach (Excel.Range row in result.Rows) {
            if (row.Cells[2, 2].Value2() != null) {
                if (!NOT_ALLOWED_RUBRIQUES.Contains((string)row.Cells[2, 8].Value2())) {//check if rubrique is allowed or not
                    //finish method
                }
            }
        }
    }
    xlWorkbook.Close(SaveChanges: false);
    xlApp.Quit();
}

Aber die einzige Möglichkeit, mit dem Autofilter in EPPlus etwas zu tun, besteht darin, ihn zu aktivieren oder zu deaktivieren und keine Spalte nach einem bestimmten Wert zu filtern. Etwas wie das

sheet.Cells["A RANGE HERE"].AutoFilter = true;

Ich versuche hier also, eine große Excel-Datei nach einem bestimmten Wert zu filtern und dann nur die Zeilen mit diesen Werten anzuzeigen.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage