除了一些例外,保护excel表

时间:2014-03-26 05:02:47

标签: excel vba excel-vba

我有一张excel表,我正在使用宏,下拉列表和按钮。我在不同的单元格中也有很多公式,如乘法,vlookup等。按钮的工作方式是当我按下它时会添加一个空行并向其中添加一些数据。用户应该输入数据的单元格很少

按钮,公式和下拉列表会更改并向不同的单元格添加新数据

现在我想保护工作表,以便用户无法或故意更改内容。

但是当我保护工作表时,它在使用工作表时显示错误,因为按钮,乘法和vlookup往往会改变不同单元格中的数据。

是否可以使工作表只为用户读取(除了应该输入数据的某些单元格)并允许宏,公式和下拉列表更改单元格内容

1 个答案:

答案 0 :(得分:1)

在workbook_open()中放置一个宏来解锁你的工作表然后在你的其他宏的末尾放置锁定宏ex:

Private Sub Workbook_Open()
  On Error Resume Next
       Sheets("Sheet1").Unprotect Password:=""

  *****your codes here

       Sheets("Sheet1").Protect Password:=""
end sub

这将确保您的代码在代码运行时未锁定,但在代码完成后将锁定。