3

所以我在一个 excel 电子表格中有两列——应该只允许其中一列有一个值。让我们称它们为 CellsA1B1.

我认为我可以通过以下两种方式之一来促进这一点:

  1. 当单元格A1更改时,它会显示为空白B1

    我可以这样做,但是当它空白时B1,它会触发相同的事件并且两个单元格都被清除。

  2. 如果其中一个单元格中有值,则另一个单元格会以某种方式被锁定以进行编辑,直到您清除第一个单元格。

任何提示将非常感谢。

感谢团队!

4

1 回答 1

2

您可以禁用事件以避免清除两个单元格;IE

Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng1 As Range
Set rng1 = Intersect(Target, Range("A1,C1"))
If rng1 Is Nothing Then Exit Sub
Application.EnableEvents = False
If rng1.Address(0, 0) = "A1" Then
[c1].ClearContents
Else
[a1].ClearContents
End If
Application.EnableEvents = True
End Sub
于 2013-07-04T04:58:56.347 回答