2013-08-22 7 views
6

私は2つのドロップダウンリストを持っています - 1つは他に依存しています - つまり、A1のリストから特定の値を選択すると、特定のリストがA2に表示されます。これはうまく動作します。しかし、私がA1の値を変更すると、A2はリストをクリックするまでセルにとどまり、A2の私の値は私の選択に基づいて変化します。Excelと2つのドロップダウンリスト間の値を変更

たとえば、リスト1が['はい'、 'いいえ']であり、リストへのはい:[1,2,3]いいえ:[4,5,6]です。まず、A1で「はい」を選択し、次にA2で2を選択します。次に、A1に「いいえ」を選択すると、実際にA2をクリックして新しい値(4,5,6)を選択するまで、「2」はA2にとどまります。 A1の選択を変更したら、A2をクリアする方法はありますか?

ありがとうございます!

答えて

3

Worksheetのコードページにこのコードを置く:あなたのワークシートのVBAコードでこれを入れ

Private Sub Worksheet_Change(ByVal Target As Range) 
    If Target.Address = Range("A1").Address Then 
     Range("A2").ClearContents 
    End If 
End Sub 
+0

素晴らしいソリューション - 非常に簡単! – mcfly

0

ワークシートのワークシート変更手順でA2リストをリフレッシュするコードを挿入できます。そのワークシートでセルの値が変更されるたびに、更新コードが実行されます。

+0

これが右に聞こえます。私は現在、VBAを使用していません - あなたは例を挙げることができますか?ありがとう! – mcfly

+0

mcflyが素晴らしいソリューションを持っているように見える[上記](http://stackoverflow.com/a/18384534/2658159)。 –

4

Private Sub Worksheet_Change(ByVal Target As Excel.Range) 
    If Target.Address = Range("A1").Address Then 
     Dim dependentCell As Range 
     Set dependentCell = Target.Offset(1, 0)  'Cell A2 
     If dependentCell.Validation.Value = False Then dependentCell.Clear 
    End If   
End Sub 
関連する問題