Excel中实现带密码验证的行取消隐藏功能(附现有VBA代码)
带密码验证的行隐藏/取消隐藏VBA代码
以下是添加了密码验证功能的修改版代码,仅在取消隐藏指定行时要求输入密码:
Sub ToggleRowVisibility() Dim targetRows As Range Dim inputPassword As String Dim correctPassword As String ' 设置目标行范围和正确密码 Set targetRows = Rows("125:192") correctPassword = "YourPasswordHere" ' 替换成你实际要用的密码 If targetRows.Hidden = True Then ' 取消隐藏前要求输入密码 inputPassword = InputBox("请输入取消隐藏的密码:", "密码验证") If inputPassword = correctPassword Then targetRows.EntireRow.Hidden = False Else MsgBox "密码错误,无法取消隐藏!", vbExclamation, "验证失败" End If Else ' 隐藏行无需验证,直接执行 targetRows.EntireRow.Hidden = True End If End Sub
关键修改说明
- 移除了不必要的
Select操作,直接通过对象变量操作行范围,提升代码效率和稳定性 - 新增密码验证逻辑:仅在取消隐藏时触发密码输入框
- 可通过修改
correctPassword的值自定义密码 - 添加了密码错误时的提示信息,提升用户体验
使用注意事项
- 把
"YourPasswordHere"替换为你自己设置的密码 - 若需要修改目标行范围,调整
Rows("125:192")即可 - 该代码仅做基础密码验证,适合普通场景使用
内容的提问来源于stack exchange,提问作者ariesf
相关产品推荐
相关产品推荐

