我在 Excel 中的 A1、A2 和 A3 单元格中有三个字段。所有这三个字段在第一次尝试时均已解锁。
如果用户首先在 A3 中输入值,则 A1 和 A2 应该被禁用或锁定。
如果用户在 A1 中输入一个值,那么 A2 应该是必填的,但 A3 将被锁定或禁用。
换句话说,用户必须填写 A1 和 A2,但不必填写 A3,或者用户应该填写 A3,但不必填写 A1 和 A2。这可以在 Excel 中使用 IF 和其他方法实现吗?
答案1
按着这些次序:
方法 1:
- 选择单元格
A1:A2
,或仅允许编辑的单元格。 - 右键点击然后从弹出菜单中单击格式化单元格。
- 从单元格格式对话框, 打保护选项卡
- 取消选中“锁定”框,并结束好的。
- 点击审阅选项卡然后保护工作表。
- 在保护工作表对话框并击中好的。
注意:首先A3
取消保护表格并重复上述步骤。
方法 2:
Sub LockCells()
Dim mainworkBook As Workbook
Set mainworkBook = ActiveWorkbook
mainworkBook.Sheets("Sheet1").Range("A1:A2").Value = "Lock"
mainworkBook.Sheets("Sheet1").Range("A1:A2").Locked = True
mainworkBook.Sheets("Sheet1").Range("A3").Locked = False
ActiveSheet.Protect
End Sub
Sub Unlockcells()
Dim mainworkBook As Workbook
Set mainworkBook = ActiveWorkbook
mainworkBook.Sheets("Sheet11").Range("A3").Value = "Free"
mainworkBook.Sheets("Sheet11").Range("A1:A2").Locked = False
mainworkBook.Sheets("Sheet11").Range("A3").Locked = True
ActiveSheet.Protect
End Sub
注意:
- 按Alt+F11然后打开 VB 编辑器复制粘贴这些代码作为标准模块。
- 取消保护运行任何宏之前,请检查工作表。
现在只允许对未锁定的单元格进行更改。