Excel, Dropdown-Listen

3107
Daniel

Wenn ich benutzerdefinierte Dropdown-Listen in Excel erstellt habe, werden meine Excel-Tabellen nicht auf eine kleinere Liste reduziert, wenn ich in die Dropdown-Listenzelle schreibe.

Zum Beispiel, wenn meine Dropdown-Liste für die USA-Staaten [AL ... WY] ist und ich das Zeichen 'N' eingebe. Warum gibt mir meine Liste nicht eine Untermenge von Optionen [... NY ... NJ. ..]. Kann eine Teilmengen-Autovervollständigung überhaupt durchgeführt werden?

Hinweis: Ich habe meine Excel-Dropdown-Listen wie folgt erstellt: http://danielk.org/blog/2009/09/22/excel/

6
Welche Art von Dropdown dkusleika vor 15 Jahren 0

1 Antwort auf die Frage

3
DaveParillo

Das liegt daran, dass Datenüberprüfung in Excel nicht so funktioniert. Sie müssen ein aktives X-Steuerelement verwenden. Weitere Informationen finden Sie auf der Seite zur Überprüfung der Contextures-Daten und insbesondere auf deren Beispiele zu ComboBox Data Validation und ComboBox Depend .

Aktualisieren

Wenn Sie ihre Beispiele verwenden, ersetzen Sie den TempCombo_KeyDown-Ereignishandler durch TempCombo_KeyUp. Zumindest auf meinem Excel (Excel 2003 SP2) stürzt es ab.

Weitere Einzelheiten zu dem Beispiel, auf das ich Sie verwiesen habe:

Ich bin nicht sicher, warum das Ändern von TempCombo_KeyDown in TempCombo_KeyUp funktioniert, aber es kann sich auf KeyCode beziehen. MSDN impliziert, dass KeyCode tatsächlich ein Zeiger ist und für alle praktischen Zwecke von ref übergeben wird, obwohl die Signatur ByVal angibt. Der Absturz geschieht immer in der End Sub-Zeile von TempCombo_KeyDown.

Dies ist nur eine Vermutung meinerseits, aber durch die Verarbeitung des KeyDown-Ereignisses, nachdem die neue Zelle aktiviert wurde, wenn TempCombo vorhanden ist, wird das Objekt aktiviert und kann das KeyUp-Ereignis verarbeiten. Wenn die Zielzelle TempCombo nicht aktiviert, hat das KeyUp-Ereignis keine gültige Objektreferenz, und es kommt zu einem unangenehmen Absturz.

Wow MS macht dies komplex, sie sollten es in ihrer nächsten Version von Excel wirklich einfacher machen! Daniel vor 15 Jahren 1