答案:通过单元格锁定与工作表保护可防止公式被修改。首先选中含公式的单元格,设置“锁定”并保护工作表,可选密码;为实现仅保护公式,可先解锁所有单元格,再单独锁定含公式单元格;对于大量公式,可用VBA代码自动锁定所有含公式单元格并启用保护。

如果您在使用Excel时希望保护某些公式不被他人修改,可以通过设置单元格锁定功能来实现。默认情况下,所有单元格都处于“锁定”状态,但只有在启用工作表保护后该设置才会生效。以下是具体操作方法:
本文运行环境:Dell XPS 13,Windows 11
一、锁定特定单元格中的公式
通过设置单元格格式为锁定,并结合工作表保护功能,可以防止他人修改指定的公式内容。
1、选中包含公式的单元格或单元格区域。
2、右键点击选中区域,选择“设置单元格格式”。
3、切换到“保护”选项卡,确认已勾选锁定选项。
4、点击“确定”保存设置。
5、在“开始”选项卡中,点击“格式”→“保护工作表”。
6、在弹出的对话框中输入密码(可选),并确保权限设置中公式编辑权限未被勾选。
7、再次确认密码(如果设置了密码)。
二、仅允许修改非公式单元格
为了更灵活地控制编辑权限,您可以先解锁所有单元格,然后仅对含有公式的单元格进行锁定,从而实现仅保护公式的目的。
1、按Ctrl + A全选工作表中的所有单元格。
2、右键选择“设置单元格格式”,进入“保护”选项卡。
3、取消勾选锁定,点击“确定”以解锁所有单元格。
4、单独选中需要保护的含公式单元格。
5、再次打开“设置单元格格式”,在“保护”选项卡中重新勾选锁定。
6、转到“审阅”选项卡,点击“保护工作表”。
7、根据需要设置密码和允许用户执行的操作,完成保护启用。
三、使用VBA代码自动锁定所有含公式的单元格
对于包含大量公式的复杂工作表,手动设置效率较低,可借助VBA脚本自动识别并锁定所有含公式的单元格。
1、按下Alt + F11打开VBA编辑器。
2、插入一个新模块(Insert → Module)。
3、粘贴以下代码:
Sub LockFormulaCells()
Dim ws As Worksheet: Set ws = ActiveSheet
ws.Unprotect
Dim cell As Range
For Each cell In ws.UsedRange
If cell.HasFormula Then cell.Locked = True
Next cell
ws.Protect
End Sub
4、运行该宏,系统将自动锁定所有含公式的单元格并启用工作表保护。











