Как да попълня комбинирано поле с уникални стойности само в Excel?
Когато създадете разгъващ се списък със списък с данни, които включват някои дублиращи се стойности, дублиращите се стойности няма да бъдат изключени автоматично в разгъващия се списък. В този случай, как бихте могли да покажете само уникални елементи в разгъващия се списък? Може би този урок може да ви направи услуга.
Попълвайте разгъващото се поле с уникални стойности само с помощта на VBA код
Попълвайте разгъващото се поле с уникални стойности само с помощта на VBA код
Следният VBA код може да ви помогне да добавите уникалните стойности, когато създавате разгъващ се списък, моля, направете следното:
1. Първо вмъкнете разгъващ се списък, моля щракнете Софтуерен Инженер > Поставете > Комбо поле (ActiveX Control)и след това плъзнете мишката, за да нарисувате разгъващ се списък, вижте екранната снимка:
2. След това щракнете с десния бутон върху разгъващото се поле и изберете Преглед на кода от контекстното меню вижте екранната снимка:
3, И Microsoft Visual Basic за приложения прозорецът изскача, моля, копирайте и поставете следния код, за да замените оригиналния код.
VBA код: комбинирано поле с уникални стойности:
Public Sub Populate_combobox_with_Unique_values()
'Updateby Extendoffice
Dim vStr, eStr
Dim dObj As Object
Dim xRg As Range
On Error Resume Next
Set dObj = CreateObject("Scripting.Dictionary")
Set xRg = Application.InputBox("Range select:", "Kutools for Excel", _
ActiveWindow.RangeSelection.AddressLocal, , , , , 8)
vStr = xRg.Value
Application.ScreenUpdating = False
With dObj
.comparemode = 1
For Each eStr In vStr
If Not .exists(eStr) And eStr <> "" Then .Add eStr, Nothing
Next
If .Count Then
ActiveSheet.ComboBox1.List = WorksheetFunction.Transpose(.keys)
End If
End With
Application.ScreenUpdating = True
End Sub
Забележка: В горния код, ComboBox1 е името на създаденото от вас комбинирано поле, можете да го промените според нуждите си.
4. След това натиснете F5 ключ, за да стартирате този код, и в полето за подкана, моля, изберете списъка с източници на данни, който искате да добавите в комбинираното поле, вижте екранната снимка:
5, И после щракнете върху OK само уникалните стойности се показват в разгъващото се поле, вижте екранната снимка:
тип: Ако няма Софтуерен Инженер раздел в лентата, тази статия Как да покажа/покажа раздела за програмисти в лентата на Excel 2007/2010/2013? може да ви помогне да покажете раздела Разработчик.
Най-добрите инструменти за продуктивност в офиса
Усъвършенствайте уменията си за Excel с Kutools за Excel и изпитайте ефективност, както никога досега. Kutools за Excel предлага над 300 разширени функции за повишаване на производителността и спестяване на време. Щракнете тук, за да получите функцията, от която се нуждаете най-много...
Раздел Office Внася интерфейс с раздели в Office и прави работата ви много по-лесна
- Разрешете редактиране и четене с раздели в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Отваряйте и създавайте множество документи в нови раздели на един и същ прозорец, а не в нови прозорци.
- Увеличава вашата производителност с 50% и намалява стотици кликвания на мишката за вас всеки ден!