我们创建的 Excel 表格有时可能包含一些不想让其他人编辑的数据或是公式,这时我们可以将对应的单元格锁定,这样可以有效地保护表格数据或公式的完整性。本文将介绍如何使用 Spire.XLS for .NET 以编程的方式锁定 Excel 表格的指定单元格。
安装 Spire.XLS for .NET
首先,您需要将 Spire.XLS for .NET 包含的 DLL 文件作为引用添加到您的 .NET 项目中。DLL 文件可以从此链接下载,也可以通过 NuGet 安装。锁定 Excel 表格的指定单元格
PM> Install-Package Spire.XLS
锁定 Excel 表格的指定单元格
通常情况下,Excel 表格中的所有单元格都是锁定的状态。因此,我们需要先将所有单元格解锁,再进行锁定。需要注意的是,只有在表格被保护的情况下,锁定单元格的设置才会生效。
以下是在 Excel 表格中锁定指定单元格的详细操作步骤:
- 创建 Workbook 类的对象。
- 使用 Workbook.LoadFromFile() 方法载入 Excel 表格。
- 使用 Workbook.Worksheet[sheetIndex] 属性获取想要的工作表。
- 获取所有已使用的单元格,然后通过将 CellRange.Style.Locked 属性设置为 false 来解锁这些单元格。
- 获取指定单元格,然后通过将 CellRange.Style.Locked 属性设置为 true 来锁定单元格。
- 使用 XlsWorksheetBase.Protect() 方法保护工作表。
- 使用 Workbook.SaveToFile() 方法保存 Excel 表格。
- C#
- VB.NET
using Spire.Xls;
namespace LockCells
{
class Program
{
static void Main(string[] args)
{
//创建 Workbook 类的对象
Workbook workbook = new Workbook();
//载入 Excel 表格
workbook.LoadFromFile(@"C:\示例.xlsx");
//获取第一个工作表
Worksheet sheet = workbook.Worksheets[0];
//解锁该工作表中所有已使用的单元格
CellRange usedRange = sheet.Range;
usedRange.Style.Locked = false;
//锁定指定单元格
CellRange cells = sheet.Range["A1:F2"];
cells.Style.Locked = true;
//用密码保护该工作表
sheet.Protect("123456", SheetProtectionType.All);
//保存 Excel 表格
workbook.SaveToFile("锁定单元格.xlsx", ExcelVersion.Version2016);
}
}
}
Imports Spire.Xls
Namespace LockCells
Class Program
Shared Sub Main(ByVal args() As String)
'创建 Workbook 类的对象
Dim workbook As Workbook = New Workbook()
'载入 Excel 表格
workbook.LoadFromFile("C:\示例.xlsx")
'获取第一个工作表
Dim sheet As Worksheet = workbook.Worksheets(0)
'解锁该工作表中所有已使用的单元格
Dim usedRange As CellRange = sheet.Range
usedRange.Style.Locked = False
'锁定指定单元格
Dim cells As CellRange = sheet.Range("A1:F2")
cells.Style.Locked = True
'用密码保护该工作表
sheet.Protect("123456", SheetProtectionType.All)
'保存 Excel 表格
workbook.SaveToFile("锁定单元格.xlsx", ExcelVersion.Version2016)
End Sub
End Class
End Namespace
申请临时 License
如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。获取有效期 30 天的临时许可证。