Meine Lösungsidee basiert auf einem Stil einer Zelle.
(1) Fügen Sie einen neuen Stil für Zellen mit Dropdown-Listen hinzu. Ich nannte es "Dropdown".
(2) Wenden Sie den Stil für die Zellen, die Sie Drop-Down-Listen haben werden. Hier ist es B2.
(3) Validierungselemente für Ihre Dropdown-Liste einrichten. Ich lege sie in die Zellen E2: G2.
(4) Wenn Sie in Daten stellen dynamische Validierungsliste haben wollen> Datenvalidierung> Quelle: =OFFSET($E2;0;0;1;COUNTA($E2:$K2))
oder alternativ einen benannten Bereich für die erklären, wie Aprillion beraten. Es ist sehr nützlich. In meinem Beispiel kann ich ein neues Validierungselement in H2 hinzufügen und es wird automatisch in die Validierungsliste aufgenommen.
(5) Führen Sie ein Makro aus, wenn Sie alle Zellen mit einem Dropdown-Stil auf den Standardwert einrichten möchten. In meinem Fall ist der Standardwert '- Choose from the list -
. Dieser Wert wird auch dann eingerichtet, wenn er nicht in der Validierungsliste steht.
Sub DropDownListToDefault()
Dim oCell As Range
Dim ACell As Range
Set ACell = ActiveCell
For Each oCell In ActiveSheet.UsedRange.Cells
If oCell.Style = "Dropdown" Then
oCell.Value = "'- Choose from the list -"
End If
Next
ACell.Select
End Sub
Nach dem Ausführen des Makros Sie die folgende Wahl haben:
Wenn Sie einen Benutzer mögen etwas aus der Dropdown-Liste zu wählen, ist es sehr einfach, den Standardwert in der Weiterverarbeitung zu übernehmen .
Meinst du den Wert in B1 SET den Standardwert für alle Dropdowns? – peege
Standardwerte sind sowohl mit VBA als auch mit einer Formel möglich. Es gibt jedoch keine eingebaute 'eval'-Funktion, so dass Sie keinen Text einer Funktion in einer Zelle schreiben und an anderer Stelle ausführen können. Sie können jedoch einen benannten Bereich mit dem' OFFSET' angeben und '= my_named_range' in Daten verwenden Validierung, wäre das ausreichend? – Aprillion
@peege Nein. Der Standardwert ist in C1. In D1, E1, F1 usw. gibt es andere Werte, die ein Benutzer aus der Dropdown-Liste (in A1) auswählen kann. C1 ist ein erster Array-Wert. –