You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何设置工作表权限:Titles区域禁增删行可编辑,Contents无限制?

Excel 工作表权限设置实现步骤

一、解锁可编辑单元格区域

先解锁所有允许用户编辑的单元格,确保工作表保护生效后这些区域仍可正常编辑:

  • 选中Titles区域(A11:O15):右键→「设置单元格格式」→切换到「保护」选项卡,取消勾选「锁定」,点击确定。
  • 选中Contents区域(A18:O30):重复上述操作,取消「锁定」。
  • 选中前17行(1-17行):同样取消「锁定」,保障这部分内容可编辑。

二、通过VBA限制行的增删操作

默认工作表保护无法区分区域控制行增删,需添加VBA代码实现精准限制:

  1. 右键点击工作表标签→选择「查看代码」,打开VBA编辑器。
  2. 将以下代码粘贴到编辑器窗口:
Private Sub Worksheet_BeforeDelete(ByVal Target As Range)
    ' 禁止删除前17行(包含Titles区域的行)
    If Not Intersect(Target.EntireRow, Rows("1:17")) Is Nothing Then
        MsgBox "禁止删除前17行的内容!", vbExclamation
        Application.EnableEvents = False
        Target.EntireRow.Undo
        Application.EnableEvents = True
    End If
End Sub

Private Sub Worksheet_BeforeInsert(ByVal Target As Range)
    ' 禁止在前17行范围内插入新行
    If Not Intersect(Target.EntireRow, Rows("1:17")) Is Nothing Then
        MsgBox "禁止在前17行插入新行!", vbExclamation
        Application.EnableEvents = False
        Target.EntireRow.Undo
        Application.EnableEvents = True
    End If
End Sub
  1. 保存工作簿为「启用宏的工作簿(.xlsm)」格式,否则代码无法生效。

三、启用工作表保护

最后设置工作表保护,防止用户取消VBA限制或修改锁定区域:

  • 切换到Excel界面,点击「审阅」选项卡→「保护工作表」。
  • 在弹出的对话框中,勾选以下必要选项(可按需调整):
    • 选定未锁定单元格
    • 选定锁定单元格
    • 编辑对象
  • 取消勾选「删除行」「插入行」(双重保险,配合VBA限制)。
  • 设置保护密码(可选),点击确定。

最终效果

  • Titles区域:可自由编辑内容,但无法删除11-15行,也不能在这些行之间插入新行。
  • 前17行:可编辑所有内容,但无法增删1-17行的任何行。
  • Contents区域:完全不受限制,可自由编辑内容、增删行或调整区域。

内容的提问来源于stack exchange,提问作者Xodarap

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 12:46:14