2013-08-22 7 views
6

Ich habe zwei Dropdown-Listen - eine ist abhängig von der anderen - was bedeutet, wenn ich einen bestimmten Wert aus der Liste in A1 auswählen, erscheint eine bestimmte Liste in A2. Das funktioniert gut. Wenn ich jedoch den Wert in A1 ändere, bleibt A2 in der Zelle, bis ich auf die Liste klicke - dann ändert sich mein Wert in A2 basierend auf meiner Auswahl.Excel und Ändern von Werten zwischen zwei Dropdown-Listen

Zum Beispiel, wenn Liste 1 ist ['Ja', 'Nein'] und listet auf ist Ja: [1,2,3] Nein: [4,5,6]. Zuerst wähle ich 'Ja' für A1 und dann 2 für A2. Wenn ich dann für A1 "Nein" wähle, bleibt "2" in A2, bis ich tatsächlich auf A2 klicke, um einen neuen Wert (4,5,6) auszuwählen. Gibt es eine Möglichkeit A2 zu "löschen", nachdem ich die A1-Auswahl geändert habe?

Danke!

Antwort

3

Setzen Sie diesen Code in der Codepage für Ihre Worksheet:

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

Große Lösung - sehr einfach! – mcfly

0

Sie können Code für die Aktualisierung der A2-Liste in die Arbeitsblattänderung für Ihr Arbeitsblatt einfügen. Jedes Mal, wenn ein Zellenwert in diesem Arbeitsblatt geändert wird, wird der Aktualisierungscode ausgeführt.

+0

Dieses Recht klingt. Ich verwende derzeit keine VBA - könnten Sie ein Beispiel geben? Vielen Dank! – mcfly

+0

Sieht aus wie mcfly hat eine großartige Lösung [oben] (http://stackoverflow.com/a/18384534/2658159). –

4

dies für Ihr Arbeitsblatt in der VBA-Code setzen:

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 
Verwandte Themen