首页 > 解决方案 > 如何根据来自另一个单元格的值锁定一个单元格

问题描述

我有一张表,其中有 B 列。说明我们的产品已发布、持有等的处置情况。A 列说明了对该产品的处理情况,即运输、存储等。如果 B 列设置为“保留”,我需要锁定 A 列。我对这种编码很陌生,所以我几乎不知道从哪里开始,甚至不知道是否可能。

标签: excelvba

解决方案


粘贴在您希望此规则适用的工作表下的 VBE 中...

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)

If Not Intersect(Target, Range("A:A")) Is Nothing Then
    If Target.Count = 1 Then
        If Target.Offset(, 1) = "Hold" Then
            Application.EnableEvents = False
                Application.Undo
                MsgBox "Cell on Hold. Reverting changes", vbCritical
            Application.EnableEvents = True
        End If
    End If
End If

End Sub

推荐阅读