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

Как да направя имена за теглене на късмет в Excel?

Автор: Xiaoyang Последна промяна: 2021-01-07

В ежедневната си работа понякога трябва да изберете някои служители на случаен принцип от дълъг списък с имена като щастливи имена. В Excel, как бихте могли произволно да изберете някои имена за теглене на късмет? В тази статия ще говоря за някои полезни методи за справяне с тази работа в Excel.

Извличане на произволни имена за теглене на късмет с формула

Извличане на произволни имена за теглене на късмет с VBA код

Изберете произволни имена за теглене на късмет с Kutools за Excel


Извличане на произволни имена за теглене на късмет с формула

Например, искам да извлека произволни 3 имена от списъка с имена, следната дълга формула може да ви помогне, моля, направете следното:

Въведете тази формула в празна клетка, където искате да поставите резултата: =IF(ROWS(C$2:C2)>B$2,"",INDEX(A$2:A$16,AGGREGATE(15,6,((ROW(A$2:A$16)-ROW(A$2)+1)/ISNA(MATCH(A$2:A$16,C$1:C1,0))),RANDBETWEEN(1,ROWS(A$2:A$16)-COUNTA(C$1:C1)+1)))) и след това плъзнете манипулатора за запълване надолу до клетките, както ви е необходимо, вижте екранната снимка:

doc щастливи имена 1

Забележки:

1. В горната формула: A2: A16 е списъкът с имена, от който искате да извлечете на случаен принцип, B2 е необходимият брой, който искате да извлечете имена, C2 е клетката, в която да въведете формулата, и C1 е клетката над клетката с формула.

2. Можете да натиснете F9 ключ, за да получите друга група нови имена на случаен принцип.


Извличане на произволни имена за теглене на късмет с VBA код

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

1. Задръжте натиснат Alt + F11 за да отворите Microsoft Visual Basic за приложения прозорец.

2. Щракнете Поставете > Модулии поставете следния код в Модули Window.

VBA код: Извличане на произволни имена от списък:

Public Sub LuckyDraw()
    Dim I, J, xRnd As Long
    Dim xSRg, xDRg As Range
    Dim xDic As New Dictionary
    Dim xnum, xLastRow As Long
    On Error Resume Next
    Set xSRg = Application.InputBox("Please select the data list:", "KuTools for Excel", Selection.Address, , , , , 8)
    If xSRg Is Nothing Then Exit Sub
    Set xDRg = Application.InputBox("Please selecta cell to put the result:", "KuTools for Excel", , , , , , 8)
    If xDRg Is Nothing Then Exit Sub
    xLastRow = xSRg.Rows.Count
    Set xSRg = xSRg(1)
    Set xDRg = xDRg(1)
    xnum = Range("B2")
    If xnum < 1 Then Exit Sub
    J = 0
    For I = 1 To xnum
LabExit:
        xRnd = Int(Rnd() * xLastRow)
        If xDic.Exists(xRnd) Then GoTo LabExit
        xDic.Add xRnd, ""
        xDRg.Offset(J, 0).Value = xSRg.Offset(xRnd, 0).Value
        J = J + 1
    Next
End Sub

Забележка: В горния код, B2 клетката съдържа броя имена, които искате да извлечете.

3. След като въведете кода, щракнете Инструменти > Препратки в отвореното Microsoft Visual Basic за приложения прозорец и след това изскочи Препратки – VBAProject диалогов прозорец, проверете Microsoft Scripting Runtime опция в Налични препратки списъчно поле, вижте екранна снимка:

doc щастливи имена 2

4, И после щракнете върху OK бутон, за да излезете от диалоговия прозорец, след което натиснете F5 ключ, за да изпълните този код, и се появява поле за подкана, за да ви напомни да изберете списъка с данни, от който искате да извлечете имена, вижте екранна снимка:

doc щастливи имена 3

5. Щракнете OK и се появява друго поле за подкана, моля, изберете клетка, където искате да поставите резултата, вижте екранната снимка:

doc щастливи имена 4

6, След това кликнете OKи желаният брой имена са създадени произволно наведнъж, вижте екранната снимка:

doc щастливи имена 5


Изберете произволни имена за теглене на късмет с Kutools за Excel

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

Kutools за Excel : с повече от 300 удобни добавки за Excel, безплатни за изпробване без ограничение за 30 дни. 

След инсталиране Kutools за Excel, моля, направете следното:

1. Изберете списъка с имена, който искате да изберете произволно. След това щракнете Kutools > Обхват > Сортиране / избор на диапазон на случаен принцип, вижте екранна снимка:

2. В Сортиране/избиране на диапазон на случаен принцип диалогов прозорец, под Изберете въведете номера, чиито имена искате да изберете Брой клетки за избор текстово поле и след това изберете Изберете произволни клетки в Изберете тип раздел, вижте екранна снимка:

3, След това кликнете Ok и вашият конкретен брой имена са избрани според нуждите ви, вижте екранната снимка:

doc щастливи имена 8

Щракнете, за да изтеглите Kutools за Excel и безплатна пробна версия сега!

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

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

Усъвършенствайте уменията си за Excel с Kutools за Excel и изпитайте ефективност, както никога досега. Kutools за Excel предлага над 300 разширени функции за повишаване на производителността и спестяване на време.  Щракнете тук, за да получите функцията, от която се нуждаете най-много...

Описание


Раздел Office Внася интерфейс с раздели в Office и прави работата ви много по-лесна

  • Разрешете редактиране и четене с раздели в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Отваряйте и създавайте множество документи в нови раздели на един и същ прозорец, а не в нови прозорци.
  • Увеличава вашата производителност с 50% и намалява стотици кликвания на мишката за вас всеки ден!
Comments (3)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Error:
#NUM!



Formula:
=IF(ROWS(C$2:C2)>B$2,"",INDEX(A$2:A$1500,AGGREGATE(15,6,((ROW(A$2:A$1500)-ROW(A$2)+1)/ISNA(MATCH(A$2:A$1500,C$1:C1,0))),RANDBETWEEN(1,ROWS(A$2:A$1500)-COUNTA(C$1:C1)+1))))
This comment was minimized by the moderator on the site
Hello, Mangipudi,
This formula works well in my Excel workbook, which Excel version do you use?
You can also give your problem as a screenshot here.
This comment was minimized by the moderator on the site
I have the same error, but it is not showing all times.
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations