如何防止他人在共享的未受保护工作簿中删除行或列?
作者:互联网
2026-04-14
当您将工作簿共享给他人时,如何在不启用工作簿保护的情况下,防止他人删除共享工作簿中的行或列?我找到了一段 VBA 代码,可有效阻止他人在共享工作簿中删除行或列。
使用 VBA 在共享工作簿中防止删除行或列
使用 VBA 在共享工作簿中防止删除行或列
1. 按下 Alt + F11,即可打开 Microsoft Visual Basic for Applications 窗口。
2. 单击插入> 模块 以打开模块窗口,然后将以下 VBA 代码复制到该窗口中。
VBA:防止删除行或列。
Sub StopDeleteRowCols()
'Updateby20221221
Dim xBarControl As CommandBarControl
Application.OnKey "^{-}", ""
For Each xBarControl In Application.CommandBars.FindControls(ID:=293)
xBarControl.Enabled = False
Next
For Each xBarControl In Application.CommandBars.FindControls(ID:=294)
xBarControl.Enabled = False
Next
End Sub
3. 单击运行按钮,或按键盘上的 F5 键即可运行此代码。
此后,当其他人右键单击以删除所选列或行时,上下文菜单中的“删除”选项将不可用。请参见截图:

此外,它还能有效阻止用户通过快捷键 Ctrl + —— 删除行或列。
注意:
(1) 如果您已通过审阅> 共享工作簿 功能共享了工作簿,则无法再添加任何 VBA 宏。因此,建议您在共享工作簿前先添加 VBA。
(2) 此 VBA 代码将在您右键单击所选列或行时,禁用所有工作簿上下文菜单中的删除选项。
(3) 要恢复上下文菜单中的删除选项,请将上述 VBA 代码中的两个 False 替换为 True,然后再次运行该段 VBA。
借助 KUTOOLS AI 解锁 Excel 的神奇功能
- 智能执行:只需输入简单命令,即可执行单元格操作、分析数据并创建图表。
- 自定义公式:生成量身定制的公式,助您优化工作流程!
- VBA 编码:轻松编写并运行 VBA 代码。
- 公式解析:轻松掌握复杂公式,一目了然!
- 文本翻译:轻松打破电子表格中的语言障碍!
相关标签:
Excel技巧
相关推荐
