如何用VBA实现每次点击EXCEL工作簿里面Sheet1、Sheet2工作表,就提示需要输入密码,输入后才能查看内容
展开全部
在工作表模块下定义事件如下:
Private Sub Worksheet_Activate()
If InputBox("please input password here:") = "password" Then
Me.Unprotect "password"
Me.Cells.EntireColumn.Hidden = False
End If
End Sub
Private Sub Worksheet_Deactivate() '离开时隐藏所有列并保护工作表
On Error Resume Next
Me.Cells.EntireColumn.Hidden = True
Me.Protect "password"
End Sub
Private Sub Worksheet_Activate()
If InputBox("please input password here:") = "password" Then
Me.Unprotect "password"
Me.Cells.EntireColumn.Hidden = False
End If
End Sub
Private Sub Worksheet_Deactivate() '离开时隐藏所有列并保护工作表
On Error Resume Next
Me.Cells.EntireColumn.Hidden = True
Me.Protect "password"
End Sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2015-03-05 · 知道合伙人软件行家
关注
展开全部
禁用 宏将失效
在 sheet1 sheet2 添加
Private Sub Worksheet_Activate()
ActiveSheet.ScrollArea = "a1:a1"
ActiveWindow.Zoom = 10
If Application.InputBox("查看密码", , ***) = 123 Then
Cells(1, 1).Select
ActiveSheet.ScrollArea = "a1:xfd1048576"
ActiveWindow.Zoom = 85
Else
MsgBox "错误,工作表将隐藏"
ActiveSheet.Visible = 0
End If
End Sub
在 sheet1 sheet2 添加
Private Sub Worksheet_Activate()
ActiveSheet.ScrollArea = "a1:a1"
ActiveWindow.Zoom = 10
If Application.InputBox("查看密码", , ***) = 123 Then
Cells(1, 1).Select
ActiveSheet.ScrollArea = "a1:xfd1048576"
ActiveWindow.Zoom = 85
Else
MsgBox "错误,工作表将隐藏"
ActiveSheet.Visible = 0
End If
End Sub
追问
这一条【If Application.InputBox("查看密码", , ***) = 123 Then】编译错误
追答
If Application.InputBox("查看密码", , 0) = 123 Then
123 是密码 ,还有留1张不要密码的表
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询