C# 保护Excel文档

C# 保护Excel文档

说到保护excel文档,我们首先想到的是密码保护的方式,但excel与word有点不一样,一般情况下,每个excel工作薄都或多或少地含有一定数量的工作表,因此保护excel文档又分为了两类,保护工作薄和保护工作表。在Excel2013中,点击左上角的FILE->Info就可以找到保护工作簿和保护当前工作表这两个选项,通过它们给文件设置密码保护,我们就可以保护文档的隐私或防止别人随意更改文件的内容。当然啦,方法可以有很多种,今天我主要写的是如何使用C#编程的方式来保护Excel文档。


第一部分:保护工作薄

详细步骤:

步骤1:使用命名空间:

新建一个visual C#项目,添加引用并使用如下命名空间:

using Spire.Xls;

步骤2:创建一个新的Workbook对象并加载待保护的excel文档。

Workbook book = new Workbook();
book.LoadFromFile(@"E:\ProgramFiles\货品情况统计表.xlsx");

步骤3:设置密码保护工作薄。

book.Protect("abc-123");


第二部分:保护工作表

在该例中,保护工作表分为密码保护和密码及操作方式保护两类。

密码保护:设置密码保护以后用户不能对该worksheet做任何修改,相当于只读。如果要修改,需要先输入密码取消保护。

密码及操作方式保护:该方式允许用户做部分操作修改。

下表是保护excel工作表的18种方式:

None

Represents none flags.

Object

Protects shapes.

Scenarios

Protects scenarios.

FormattingCells

Allows users to format any cells on a protected worksheet.

FormattingColumns

Allows users to format any columns on a protected worksheet.

FormattingRows

Allows users to format any rows on a protected worksheet.

InsertingColumns

Allows users to insert columns on a protected worksheet.

InsertingRows

Allows users to insert rows on a protected worksheet.

InsertingHyperlinks

Allows users to insert hyperlinks on a protected worksheet.

DeletingColumns

Allows users to delete columns on a protected worksheet.

DeletingRows

Allows users to delete rows on a protected worksheet.

LockedCells

Protects locked cells.

Sorting

Allows users to sort on a protected worksheet.

Filtering

Allows users to set filters on a protected worksheet.

UsingPivotTable

Allows users to use pivot table reports on a protected worksheet.

UnlockedCells

Protects users interface, but not macros.

Contents

Represents all flags.

All

Represents default protection.

 

步骤4:与保护工作薄类似,获取需要保护的工作表,并给它设置密码及操作保护(这里我选择的是第一个工作表及密码保护的方式)。

Worksheet sheet = book.Worksheets[0];
sheet.Protect("def-345",SheetProtectionType.None);

步骤5:保存并重启文档。

book.SaveToFile("ProtectExcel.xlsx",ExcelVersion.Version2010);
System.Diagnostics.Process.Start("ProtectExcel.xlsx");

保护工作薄的效果图:



保护工作表的效果图:



全部代码:

using Spire.Xls;
 
namespace Protect_Excel_Document
{
    class Program
    {
        static void Main(string[] args)
        {
            //Load Workbook
            Workbook book = newWorkbook();
           book.LoadFromFile(@"E:\Program Files\货品情况统计表.xlsx");
 
            //Protect Workbook
           book.Protect("abc-123");
 
            //Protect Worksheet with Password
            Worksheet sheet = book.Worksheets[0];
           sheet.Protect("def-345", SheetProtectionType.None);
 
            //Save and Launch
           book.SaveToFile("ProtectExcel.xlsx",ExcelVersion.Version2010);
           System.Diagnostics.Process.Start("ProtectExcel.xlsx");
        }
    }
}

总结:

从上面的例子中可以看出,用这种方式来保护excel文档其实并不难,这里我使用的是Free Spire.XLS,而且在设置密码保护excel工作薄的同时也设置了密码保护excel工作表,在实际应用中可以根据不同的需求来选择保护对象。

感谢您的观看!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Free Spire.XLS for .NET 是e-iceblue公司开发的一款支持对所有Excel格式类型文件进行操作的.NET 控件。它适用于任何类型的应用程序比如ASP.NET Web应用程序或者Windows桌面应用程序。Spire.XLS for .NET允许开发人员创建和管理Excel,而不需要安装Microsoft Excel或者Microsoft Office。相比Microsoft,Spire.XLS for .NET对于开发人员来说是一个更好的选择 - 自动化,安全,稳定,可扩展性延伸,速度快,价格便宜和功能强大。 通过使用Free Spire.XLS for .NET,开发人员可以快速方便的查看,生成,读写以及自定义编辑Excel文件。Spire.XLS for .NET支持Excel 97-2003, Excel 2007, Excel 2010 and Excel 2013。它还支持C#, VB.NET, ASP.NET和 ASP.NET MVC编程语言 作为一款专业,强大,方便易用的控件,Spire.XLS for .NET有一下主要功能: 新建Excel文件,编辑已有的Excel文件,多种保存Excel方式,设置Excel文件属性,文件打印设置,合并,拆分或者拷贝单元格,支持对Excel文件加锁或者加密保护。 Spire.XLS for .NET支持把数据从数据库导出到Excel工作表,或者把数据从Excel数据导入到数据库。 Spire.XLS for .NET 提供强大的功能为开发者设置单元格格式。这次格式化数字,文字缩进,定位调整,设置单元格边线,单元格填充以及保护等。 开发人员可以轻松的利用Spire.XLS for .NET向Excel文件里面写入内容,包括超过530多种的公式,70多种表格,支持插入图片,不同类型的文字,链接,注释甚至VBA等。 Spire.XLS for .NET 还允许开发人员将Excel文件转换成PDF, HTML, CSV, Text, XML以及图片格式。 注:下载包含有Spire.xls.dll文件以及部分Demo, 你可以调用DLL并参照Demo提供的代码处理Excel文档

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值