Listă derulantă cu adăugarea de elemente noi

Deci, avem următoarea situație:

Sarcina. Efectuați o listă derulantă în celula D2 astfel încât utilizatorul să poată selecta numele din listă (coloana A). Dacă numele dorit nu este în listă, utilizatorul poate introduce un nume nou direct în celula D2 - va fi adăugat automat în coloana A și va apărea în viitor în lista derulantă.







Pasul 1: Creați un interval numit

în versiunea în limba engleză a Excel aceasta va fi:

Această formulă se referă la toate celulele umplute din coloana A, începând de la A1 și până la final - până la ultimul nume.

Pasul 2. Creați o listă drop-down în celulă

Selectați celula D2 și deschideți meniul Date - Validare. Apoi, selectați elementul List din lista derulantă Tip și introduceți o referință la intervalul numit creat la pasul 1 din linia Source:

Pentru ca Excel să ne permită să adăugăm noi nume în listă în viitor, bifați casetele de selectare din filele Input Message and Error Alert și faceți clic pe OK. Acum avem o listă drop-down în celula D2. În plus, dacă, de exemplu, adăugați manual un nou nume în coloana A, acesta va apărea automat în lista derulantă din celula D2, deoarece numele sunt preluate din domeniul dinamic Persoane, care urmărește automat modificările din coloana A.







Pasul 3: Adăugați o macrocomandă simplă

Sub-foaia de lucru sub-lucrare_ (ținta ByVal ca domeniu)

Dimpotrivă, atât timp

Dacă Target.Cells.Count> 1 Apoi Exit Sub
Dacă Target.Address = "$ D $ 2" Apoi
Dacă IsEmpty (Target) Apoi Exit Sub
Dacă WorkheetFunction.CountIf (Range ("People"), Target) = 0 Apoi
lReply = MsgBox ("Adăugarea unui nume introdus" _
țintă "în lista drop-down?", vbYesNo + vbQuestion)
Dacă lReply = vbYes Apoi
Domeniul ("Oameni"). Celule (intervalul ("Oameni"), Rows.Count + 1, 1) = Țintă
Sfârșit Dacă
Sfârșit Dacă
Sfârșit Dacă
End Sub

Dacă lista dvs. drop-down nu este în celula D2 sau ați denumit un interval cu nume care nu este Oameni. dar cumva altceva, apoi ajustați acești parametri în macro pentru a-ți propriul.

Totul! Acum, când încercați să introduceți un nume nou în celula D2, Excel vă va întreba

și cu răspunsul afirmativ al utilizatorului, adăugați automat noul nume în listă în coloana A și în lista verticală din celula D2.

ȘTIRI ALE FORUMULUI
Cavalerii teoriei eterului







Articole similare

Trimiteți-le prietenilor: