在win c中保护Excel工作表时,排序和使用AutoFilter不起作用#

Jiale Xue - MSFT 46,456 信誉分 Microsoft 供应商
2024-05-24T07:01:00.65+00:00

我正在尝试应用排序和自动过滤,同时保护 win c# 中的 excel 文件。

但是,我出错了。这是什么。。?

71040-image.png

Note:此问题总结整理于: Sort and UseAutoFilter not working while Protect Excel sheet in win c#

C#
C#
一种面向对象的类型安全的编程语言,它起源于 C 语言系列,包括对面向组件的编程的支持。
188 个问题
0 个注释 无注释
{count} 票

接受的答案
  1. Hui Liu-MSFT 48,571 信誉分 Microsoft 供应商
    2024-05-24T09:47:11.65+00:00

    你用什么来访问工作表? 我使用 EPPlus 进行了测试,效果很好。 下面是一个测试代码,你可以参考:

    ExcelPackage.LicenseContext = LicenseContext.Commercial;  
      
        using (var p = new ExcelPackage(new FileInfo(@"C:\Users\Desktop\Test.xlsx")))  
        {  
            var ws = p.Workbook.Worksheets["Sheet1"];  
            // Filtering, sorting, protection  
            ws.Cells[7, 1, 10, 5].AutoFilter = true;  
            ws.View.FreezePanes(7, 1);  
            ws.ProtectedRanges.Add("FilteredCells", new ExcelAddress(7, 1, 10, 5));  
          
            // Worksheet protection  
            ws.Protection.AllowSort = true;  
            ws.Protection.IsProtected = true;  
            ws.Protection.AllowAutoFilter = true;  
            ws.Protection.SetPassword("hunter2");  
            p.SaveAs(new FileInfo(@"C:\Users\Desktop\Test1.xlsx"));  
        }  
    

    如果回复有帮助,请点击“接受答案”并点赞。

    注意:如果您想接收此线程的相关电子邮件通知,请按照我们文档中的步骤启用电子邮件通知。

    1 个人认为此答案很有帮助。
    0 个注释 无注释

0 个其他答案

排序依据: 非常有帮助

你的答案

问题作者可以将答案标记为“接受的答案”,这有助于用户了解已解决作者问题的答案。