2013-07-04 21 views
3

所以我有一個Excel電子表格中的兩列 - 只有其中一列應該被允許有一個值。讓我們稱他們爲細胞A1B1Excel - 如何確保當一個值輸入到單元中時,另一個值會被消隱(反之亦然)?

我想,我可以促進這一個的方法有兩種:

  1. 當細胞A1改變它清空了B1

    我能做到這一點,但是當它清空了B1,它就同一事件發生並且兩個細胞都被清除。

  2. 如果其中一個單元格中有一個值,那麼另一個單元格會鎖定編輯,直到您清除第一個單元格。

任何提示將不勝感激。

感謝團隊!

回答

2

您可以禁用事件以避免清除兩個單元格;即

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 
相關問題