Прескочи на основното съдържание

Най-доброто ръководство за падащ списък с възможност за търсене в Excel

Автор: Силувия Последна промяна: 2024-03-26

Създаването на падащи списъци в Excel рационализира въвеждането на данни и минимизира грешките. Но с по-големи набори от данни превъртането през дългите списъци става тромаво. Не би ли било по-лесно просто да напишете и бързо да намерите вашия артикул? а "падащ списък с възможност за търсене" предлага това удобство. Това ръководство ще ви преведе през четири метода за създаване на такъв списък в Excel.


Видео


Падащ списък с възможност за търсене в Excel 365

Excel 365 въведе дългоочаквана функция в своите падащи списъци за валидиране на данни: възможност за търсене в списъка. С функцията за търсене потребителите могат бързо да намират и избират елементи по по-ефективен начин. След като вмъкнете падащия списък както обикновено, просто щракнете върху клетка с падащ списък и започнете да пишете. Списъкът незабавно ще се филтрира, за да съответства на въведения текст.

В този случай аз пиша Сан в клетката и падащият списък филтрира градовете, които започват с думата за търсене Сан, Като Сан Франциско намлява Сан Диего. След това можете да изберете резултат с мишката или да използвате клавишите със стрелки и да натиснете Enter.

бележки:
  • - търсенето започва от първата буква на всяка дума в падащия списък. Ако въведете знак, който не съответства на началния знак на която и да е дума, списъкът няма да покаже съвпадащи елементи.
  • Тази функция е налична само в най-новата версия на Excel 365.
  • Ако вашата версия на Excel не поддържа тази функция, тук препоръчваме Падащ списък с възможност за търсене функция на Kutools за Excel. Няма ограничение за версията на Excel и след като бъде активирано, можете лесно да търсите желания елемент в падащия списък, като просто въведете съответния текст. Вижте подробните стъпки.

Създаване на падащ списък с възможност за търсене (за Excel 2019 и по-нови)

Ако използвате Excel 2019 или по-нови версии, методът в този раздел може също да се използва, за да направите падащ списък достъпен за търсене в Excel.

Ако приемем, че сте създали падащ списък в клетка A2 на Sheet2 (изображение вдясно), използвайки данни в диапазона A2:A8 на Sheet1 (изображение вляво), следвайте тези стъпки, за да направите списъка годен за търсене.

Стъпка 1. Създайте помощна колона, която изброява елементите за търсене

Тук се нуждаем от помощна колона, за да изброим елементите, които съответстват на вашите изходни данни. В този случай ще създам помощната колона в колона D of Sheet1.

  1. Изберете първата клетка D1 в колона D и въведете заглавката на колоната, като например "Резултати от търсенето" в такъв случай.
  2. Въведете следната формула в клетка D2 и натиснете Въведете.
    =FILTER(A2:A8,ISNUMBER(SEARCH(Sheet2!A2,A2:A8)),"Not Found")
бележки:
  • В тази формула, A2: A8 е обхватът на изходните данни. Лист2!A2 е местоположението на падащия списък, което означава, че падащият списък се намира в A2 на Sheet2. Моля, променете ги според вашите собствени данни.
  • Ако не е избран елемент от падащия списък в A2 на Sheet2, формулата ще покаже всички елементи от изходните данни, както е показано на изображението по-горе. Обратно, ако е избран елемент, D2 ще покаже този елемент като резултат от формулата.
Стъпка 2: Преконфигурирайте падащия списък
  1. Изберете клетката от падащия списък (в този случай аз избирам клетката A2 на Sheet2), след което отидете на избор Дата > Потвърждаване на данните > Потвърждаване на данните.
  2. в Потвърждаване на данните диалогов прозорец, трябва да конфигурирате, както следва.
    1. Под Настройки , кликнете върху бутон в източник кутия.
    2. - Потвърждаване на данните диалоговият прозорец ще пренасочи към Sheet1, изберете клетката (напр. D2) с формулата от стъпка 1, добавете # и щракнете върху Близо бутон.
    3. Отидете в Предупреждение за грешка , премахнете отметката от Показване на предупреждение за грешка след въвеждане на невалидни данни отметка и накрая щракнете върху OK , за да запазите промените.
Резултат

Падащият списък в клетка A2 на Sheet2 вече може да се търси. Въведете текст в клетката, щракнете върху стрелката за падащо меню, за да разгънете падащия списък и ще видите списъка незабавно филтриран, за да съответства на въведения текст.

бележки:
  • Този метод е наличен само за Excel 2019 и по-нови версии.
  • Този метод работи само на една клетка от падащ списък наведнъж. За да направите падащите списъци годни за търсене в клетки A3 до A8 в Sheet2, гореспоменатите стъпки трябва да се повторят за всяка клетка.
  • Когато въвеждате текст в клетката на падащия списък, падащият списък не се разширява автоматично, трябва да щракнете върху стрелката на падащото меню, за да го разгънете ръчно.

Лесно създаване на падащ списък с възможност за търсене (за всички версии на Excel)

Предвид различните ограничения на горните методи, ето един много ефективен инструмент за вас - Kutools за Excel's Направете падащия списък достъпен за търсене, автоматично изскачащособеност. Тази функция е налична във всички версии на Excel и ви позволява лесно да търсите желания елемент в падащия списък с проста настройка.

След изтегляне и инсталиране на Kutools за Excelизберете Kutools > Падащ списък > Направете падащия списък достъпен за търсене, автоматично изскачащ за да активирате тази функция. В Направете падащия списък достъпен за търсене диалогов прозорец, трябва да:

  1. Изберете диапазона, съдържащ падащите списъци, които трябва да бъдат зададени като падащи списъци с възможност за търсене.
  2. Кликнете OK за да завършите настройките.
Резултат

Когато щракнете върху клетка от падащ списък в посочения диапазон, вдясно се появява поле със списък. Въведете текст, за да филтрирате незабавно списъка, след това изберете елемент или използвайте клавишите със стрелки и натиснете Въведете за да го добавите към клетката.

бележки:
  • Тази функция поддържа търсене от всяка позиция в думите. Това означава, че дори ако въведете знак, който е в средата или края на думата, съвпадащите елементи пак ще бъдат намерени и показани, предлагайки по-изчерпателно и удобно за потребителя изживяване при търсене.
  • За да научите повече за тази функция, моля посетете тази страница.
  • За да приложите тази функция, моля изтеглете и инсталирайте Kutools за Excel на първо място.

Създайте падащ списък с възможност за търсене с разгъващ се списък и VBA (по-сложен)

Ако просто искате да създадете падащ списък с възможност за търсене, без да указвате конкретен тип падащ списък. Този раздел предоставя алтернативен подход: използване на комбинирано поле с VBA код за постигане на задачата.

Да предположим, че имате списък с имена на държави в колона A, както е показано на екранната снимка по-долу, и сега искате да ги използвате като изходни данни за падащите списъци на searchale, можете да направите следното, за да го направите.

Трябва да вмъкнете разгъващ се списък вместо падащ списък за валидиране на данни във вашия работен лист.

  1. Ако Софтуерен Инженер не се показва на лентата, можете да активирате Софтуерен Инженер раздел, както следва.
    1. В Excel 2010 или по-нови версии щракнете досие > Настроики, И в Опции на Excel кликнете върху Персонализирайте лентата в левия прозорец. Отидете в списъчното поле Персонализиране на лентата, отметнете Софтуерен Инженер и след това щракнете върху OK бутон. Вижте екранна снимка:
    2. В Excel 2007 щракнете Office бутон> Опции на Excel. В Опции на Excel кликнете върху Популярен в левия панел проверете Показване на раздела Разработчик в лентата и накрая щракнете върху OK бутон.
  2. След показване на Софтуерен Инженер кликнете върху Софтуерен Инженер > Поставете > Комбинирана кутия.
  3. Начертайте комбинирано поле в работния лист, щракнете с десния бутон върху него и след това изберете Имоти от менюто с десен бутон.
  4. в Имоти диалогов прозорец, трябва да:
    1. Изберете Фалшив в AutoWordSelect поле;
    2. Посочете клетка в Свързана клетка поле. В този случай въвеждаме A12;
    3. Изберете 2-fmMatchEntryNone в MatchEntry поле;
    4. Тип Падащ списък в ListFillRange поле;
    5. Затвори Имоти диалогов прозорец. Вижте екранна снимка:
  5. Сега изключете режима на проектиране, като щракнете Софтуерен Инженер > Режим на проектиране.
  6. Изберете празна клетка като C2, въведете формулата по-долу и натиснете Въведете. Те плъзгат манипулатора за автоматично попълване надолу до клетка C9, за да попълнят автоматично клетките със същата формула. Вижте екранна снимка:
    =--ISNUMBER(IFERROR(SEARCH($A$12,A2,1),""))
    бележки:
    1. $12 $ е клетката, която сте посочили като Свързана клетка в стъпка 4;
    2. След като завършите горните стъпки, вече можете да тествате: въведете буква C в разгъващото се поле и след това можете да видите, че клетките с формула, които препращат към клетките, съдържащи знака C, са запълнени с числото 1.
  7. Изберете клетка D2, въведете формулата по-долу и натиснете Въведете. След това плъзнете манипулатора за автоматично попълване надолу до клетка D9.
    =IF(C2=1,COUNTIF($C$2:C2,1),"")
  8. Изберете клетка E2, въведете формулата по-долу и натиснете Въведете. След това плъзнете манипулатора за автоматично попълване надолу до E9, за да приложите същата формула.
    =IFERROR(INDEX($A$2:$A$9,MATCH(ROWS($D$2:D2),$D$2:$D$9,0)),"")
  9. Сега трябва да създадете диапазон от имена. Моля щракнете Формула > Определете име.
  10. в Ново име диалоговия прозорец, въведете Падащ списък в Име поле, въведете формулата по-долу в Отнася се до и след това щракнете върху OK бутон.
    =$E$2:INDEX($E$2:$E$9,MAX($D$2:$D$9),1)
    
  11. Сега включете режима на проектиране, като щракнете Софтуерен Инженер > Режим на проектиране. След това щракнете двукратно върху комбинираното поле, за да отворите Microsoft Visual Basic за приложения прозорец.
  12. Копирайте и поставете VBA кода по-долу в редактора на кода.
    VBA код: направете падащия списък достъпен за търсене
    Private Sub ComboBox1_GotFocus()
    	ComboBox1.ListFillRange = "DropDownList"
    	Me.ComboBox1.DropDown
    End Sub
  13. Натиснете Друг + Q ключове за затваряне на Microsoft Visual Basic за приложения прозорец.

Отсега нататък, когато символ бъде въведен в падащото поле, той ще извърши размито търсене и след това ще изброи съответните стойности в списъка.

Забележка: Трябва да запишете тази работна книга като файл на работна книга с активирани макроси на Excel, за да запазите VBA кода за бъдеща употреба.

Най-добрите инструменти за производителност в офиса

Kutools за Excel - помага ви да се откроите от тълпата

🤖 Kutools AI помощник: Революционизирайте анализа на данни въз основа на: Интелигентно изпълнение   |  Генериране на код  |  Създаване на персонализирани формули  |  Анализирайте данни и генерирайте диаграми  |  Извикване на функциите на Kutools...
Популярни функции: Намерете, маркирайте или идентифицирайте дубликати  |  Изтриване на празни редове  |  Комбинирайте колони или клетки без загуба на данни  |  Кръг без формула ...
Супер VLookup: Множество критерии  |  Множество стойности  |  В много листове  |  Размито търсене...
адв. Падащ списък: Лесен падащ списък  |  Зависим падащ списък  |  Падащ списък с множество избори...
Мениджър на колони: Добавете конкретен брой колони  |  Преместване на колони  |  Превключване на състоянието на видимост на скритите колони  Сравнете колони с Изберете Същите и различни клетки ...
Препоръчани функции: Мрежов фокус  |  Изглед на дизайна  |  Голям формула бар  |  Мениджър на работни книги и листове | Библиотека с ресурси (Автоматичен текст)  |  Избор на дата  |  Комбинирайте работни листове  |  Шифроване/декриптиране на клетки  |  Изпращайте имейли по списък  |  Супер филтър  |  Специален филтър (филтър получер/курсив/зачертано...) ...
Топ 15 комплекта инструменти12 Текст Инструменти (добавяне на текст, Премахване на символи ...)  |  50 + Графика Видове (диаграма на Гант ...)  |  40+ Практичен формули (Изчислете възрастта въз основа на рождения ден ...)  |  19 вмъкване Инструменти (Въведете QR код, Вмъкване на картина от пътя ...)  |  12 Конверсия Инструменти (Числа към думи, Валутен обмен ...)  |  7 Обединяване и разделяне Инструменти (Разширено комбиниране на редове, Разделете клетки на Excel ...)  |  ... и още

Kutools за Excel разполага с над 300 функции, Гарантираме, че това, от което се нуждаете, е само на един клик разстояние...

Описание


Раздел Office - Активиране на четене и редактиране с раздели в Microsoft Office (включително Excel)

  • Една секунда за превключване между десетки отворени документи!
  • Намалете стотиците кликвания на мишката за вас всеки ден, кажете сбогом на ръката на мишката.
  • Увеличава продуктивността ви с 50% при преглеждане и редактиране на множество документи.
  • Внася ефективни раздели в Office (включително Excel), точно като Chrome, Edge и Firefox.
Comments (67)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Perfect idea for me. But I have a problem with the "ROWS" formula.
I mean point 8.
When I use your formula (in the drop-down list I have nothing entered, as you can see in point 8) in the first cell is "INDIA".
And pick up the cells with the "spilled" error. What I need to change for the formula to work properly.

E1 - India
E2 - #SPILL!
E3 -#SPILL!
E4 - #SPILL!
E5 - #SPILL!
E6 -#SPILL!
E7 - #SPILL!
E8 - India
E9 - Brazil
E10 - Italy
E11 - Japan
E12 - United State
E13 - Francy
E14 - Germany

You also see that there are more poems appearing than yours.
This comment was minimized by the moderator on the site
Hi Przamek PL,
Sory, I cannot reproduce the problem you mentioned. Can you provide us with your data for tesing? If you don't mind, upload your sample file here.
This comment was minimized by the moderator on the site
Thank you for your message.
I was able to run your example correctly.
I have a reflection now ...
How to apply your solution to the UseForm form?

I would like to select a person from the list in the form, then I would have information about the age of this person elsewhere in the form. Such a simple example. Difficult?
This comment was minimized by the moderator on the site
Hi Przemek PF,
This method does not work in UserForm. Sorry for the inconvenience.
This comment was minimized by the moderator on the site
Somehow excel will not let me fill in the ListFillRange with ANYTHING. so also not the DropDownList. I did all the steps but am not able to get a flashing cursor and when I type no drop down list appears. any solutions?
This comment was minimized by the moderator on the site
Hi Marloes, This problem can't be solved yet. Make sure the ListFillRange is on the same sheet as your list box. 
This comment was minimized by the moderator on the site
I've just purchased kutools to use this function. Is it possible to have two or more different searchable drop down lists (i.e. referncing different lists of valid entries) on the same sheet?
This comment was minimized by the moderator on the site
Hi Marc,The feature does not support two or more different searchable drop down lists on the same sheet. Sorry for the inconvenience.
This comment was minimized by the moderator on the site
how to use this dropdown in vba form any konw please reply
This comment was minimized by the moderator on the site
Hi, I made an action list for internal use with automatic email reminders in Excel, based on macro and vba. in a cell you select which person to send the reminder to, in a next cell you select which person to CC etc. Is it a good idea to copy this dropdownlist a few 100 times to every possible entry that I supply ? And is it possible to add a rule: Per row a particular person can only be selected once?
This comment was minimized by the moderator on the site
I have around 80000 data while running excel is hang
This comment was minimized by the moderator on the site
Sir How to use this in excel userform combobox....? plz help
This comment was minimized by the moderator on the site
Hi Sourav Singha,
Can't use it in a userform combobox. Sorry for the inconvenience.
This comment was minimized by the moderator on the site
Is there a way to make it call up a hyperlink? My email is
This comment was minimized by the moderator on the site
Hi Josh,
Sorry can;t help you with that yet.
This comment was minimized by the moderator on the site
I have a problem. My list is in Armenian language, and I see ??????-s instead of the letters. how can I fix this problem? Thank you in advance
This comment was minimized by the moderator on the site
Hi Vrezh,
Sorry this kind of problem can't be solved yet. Thank you for your comment.
This comment was minimized by the moderator on the site
How can I use this? I have two problem
1st I would like use ComboBox1 for a full column, so I have D column, it should see empty.
When I click into a cell in D column example D7 or D8(etc) I should get a Combo in D7 or D8 etc cell and after select just see the result, not the combo too.

But how can I add combobox dynamically to D2, D4, D11 etc when click or before.
I need for I can search with typing too, so simple(not active-x) combo is wrong.

2nd how set padding? - my combo text when I search is not see whole because itt has padding.

3th if my source is C column, how drop empty elements from list
This comment was minimized by the moderator on the site
Hi Steve Olah,
Sorry can't help you with that. Any question about Excel, please don’t hesitate to post in our forum: https://www.extendoffice.com/forum.html.
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations