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

  • Споделя Това
Hugh West

Досега разглеждахме как да създавате падащи списъци в Excel. Днес ще покажа как да създадете падащ списък с множество селекции в Excel .

Изтегляне на работна тетрадка за практика

Можете да изтеглите работната тетрадка за упражнения от тук.

Създаване на падащ списък с множествена селекция.xlsm

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

Тук имаме набор от данни, който има колона Име на книгата която съдържа някои имена на книги. Нашата цел днес е да създадем падащ списък въз основа на това множество от данни, който да приема множество избори. Ще покажа процедури стъпка по стъпка в раздела по-долу.

СТЪПКА 1: Създаване на падащ списък с помощта на валидиране на данни

За да създадем падащ списък с няколко избора, първо трябва да създадем падащ списък. Нека да преминем през процедурите.

  • Първо, изберете клетката, в която искате да създадете падащия списък. Аз избрах Клетка D5 .

  • След това отидете в Данни и изберете Утвърждаване на данните от лентата.

  • След това от Утвърждаване на данните изберете Списък в Позволете и напишете клетките от обхвата, чиито данни искате да добавите към списъка в Източник: област.
  • Можете също така да щракнете върху малката стрелка нагоре в Източник: и изберете диапазона от данни от работния лист.

  • Накрая ще видим падащ списък, създаден в Клетка D5 .

Подобни четива:

  • Как да направите падащ списък в Excel (независим и зависим)
  • Извършване на множествена селекция от падащ списък в Excel (3 начина)
  • Как да създадете зависим падащ списък в Excel
  • Създаване на падащ списък в няколко колони в Excel (3 начина)

СТЪПКА 2: Активиране на падащия списък за приемане на многократно избиране чрез код VBA

Вече създадохме падащия списък. Сега е време да подготвим падащия списък за многократни избори. Ще използвам 2 VBA кодове, за да активирате списъка да приема многократни селекции. Една от тях ще приеме повторението на данните, а друга няма да приеме повторението на данните.

Случай 1: Код на VBA за многократни избора с повторение

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

Нека преминем през процедурите.

  • Първо, натиснете ALT + F11 за да отворите VBA прозорец.
  • След това изберете Проект Explorer . Също така, двоен - кликнете върху на листа, на който искате да бъде изпълнена задачата.

  • Едновременно с това Код ще се отвори прозорец.
  • След това напишете следния код в този прозорец.
 Private Sub Worksheet_Change(ByVal Target As Range) Dim Oldvalue As String Dim Newvalue As String On Error GoTo Exitsub If Target.Address = "$D$5" Then If Target.SpecialCells(xlCellTypeAllValidation) Is Nothing Then GoTo Exitsub Else: If Target.Value = "" Then GoTo Exitsub Else Application.EnableEvents = False Newvalue = Target.Value Application.Undo Oldvalue = Target.Value If Oldvalue = "" ThenTarget.Value = Newvalue Else Target.Value = Oldvalue & ", " & Newvalue End If End If End If Application.EnableEvents = True Exitsub: Application.EnableEvents = True End Sub 

Забележка: В частта с кода ( Ако Target.Address = "$D$5" След това ) вместо препратка към клетка $D$5, запишете препратката към клетката, в която сте създали падащия списък.

  • Накрая се върнете в работния лист и ще можем да избираме няколко елемента в падащия списък с повторение на един и същ елемент.

Случай 2: VBA код за многократно избиране без повторение

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

Нека преминем през процедурите.

  • Първо, натиснете ALT + F11 за да отворите VBA прозорец.
  • След това изберете Проект Explorer . Също така, двоен - кликнете върху на листа, на който искате да бъде изпълнена задачата.

  • Едновременно с това Код ще се появи прозорец.
  • След това въведете следния код в този прозорец.
 Private Sub Worksheet_Change(ByVal Target As Range) Dim Oldvalue As String Dim Newvalue As String Application.EnableEvents = True On Error GoTo Exitsub If Target.Address = "$D$5" Then If Target.SpecialCells(xlCellTypeAllValidation) Is Nothing Then GoTo Exitsub Else: If Target.Value = "" Then GoTo Exitsub Else Application.EnableEvents = False Newvalue = Target.Value Application.Undo Oldvalue =Target.Value If Oldvalue = "" Then Target.Value = Newvalue Else If InStr(1, Oldvalue, Newvalue) = 0 Then Target.Value = Oldvalue & ", " & Newvalue Else: Target.Value = Oldvalue End If End If End If End If Application.EnableEvents = True Exitsub: Application.EnableEvents = True End Sub 

Забележка: В частта с кода ( Ако Target.Address = "$D$5" След това ) вместо препратка към клетка $D$5, запишете препратката към клетката, в която сте създали падащия списък.

  • Накрая се върнете в работния лист и ще можем да избираме няколко елемента в падащия списък, без да повтаряме един и същ елемент.

Заключение

С помощта на този метод можете да създадете падащ списък в Excel с множество селекции. Имате ли въпроси? Не се колебайте да ни ги зададете в раздела за коментари. Посетете нашия Уебсайт на ExcelWIKI за повече статии относно Excel .

Хю Уест е опитен обучител и анализатор на Excel с над 10 години опит в индустрията. Има бакалавърска степен по счетоводство и финанси и магистърска степен по бизнес администрация. Хю има страст към преподаването и е разработил уникален подход на преподаване, който е лесен за следване и разбиране. Неговите експертни познания по Excel са помогнали на хиляди студенти и професионалисти по целия свят да подобрят уменията си и да постигнат отлични резултати в кариерата си. Чрез своя блог Хю споделя знанията си със света, като предлага безплатни уроци за Excel и онлайн обучение, за да помогне на хората и фирмите да достигнат пълния си потенциал.