Перейти до основного матеріалу

Як швидко перемістити елементи між двома полями списку в Excel?

Ви коли-небудь намагалися перемістити елементи з одного вікна списку в інше одне, як вам потрібно, як показано на знімку екрана нижче? Тут я розповім про цю операцію в Excel.

doc переміщувати елементи між полем списку 1 doc стрілка вправо doc переміщувати елементи між полем списку 2

Переміщення елементів між полями списку


Переміщення елементів між полями списку

Немає вбудованої функції, яка може допомогти вам закінчити роботу, але у мене є код VBA, який може зробити послугу.

1. По-перше, вам потрібно створити список даних, які відображатимуться як елементи у вікнах списку на новому аркуші, який викликається Списки адміністраторів.
doc переміщувати елементи між полем списку 3

2. Потім виберіть ці дані та перейдіть до ІМ'Я , щоб дати їм ім'я ItemList. Дивіться знімок екрана:
doc переміщувати елементи між полем списку 4

3. Потім клацніть на аркуші, який містить два поля зі списком Розробник > Insert > Вікно списку (Active X Control), і намалюйте два списки. Дивіться знімок екрана:

doc переміщувати елементи між полем списку 5 doc стрілка вправо doc переміщувати елементи між полем списку 6

Якщо Розробник вкладка прихована ваша стрічка, Як показати / відобразити вкладку розробника у стрічці Excel 2007/2010/2013? ця стаття розповість вам, як це показати.

4 Потім натисніть Розробник > Insert > Кнопка керування (Active X Control), і намалюйте чотири кнопки між двома списками. Дивіться знімок екрана:

doc переміщувати елементи між полем списку 7 doc стрілка вправо doc переміщувати елементи між полем списку 8

Тепер перейменуйте чотири командні кнопки новими іменами.

5. Виберіть першу командну кнопку, натисніть властивості, і в властивості панель, дайте ім’я BTN_moveAllRight до нього і введіть >> у текстове поле поруч Підпис. Дивіться знімок екрана:
doc переміщувати елементи між полем списку 9

6. Повторіть крок 5, щоб перейменувати останні три командні кнопки з назвами нижче, а також введіть різну стрілку в заголовки. Дивіться знімок екрана:

BTN_MoveSelectedRight

BTN_moveAllLeft

BTN_MoveSelectedLeft

doc переміщувати елементи між полем списку 10 doc переміщувати елементи між полем списку 11 doc переміщувати елементи між полем списку 12

7. Клацніть правою кнопкою миші на назві аркуша, що містить поле зі списком та кнопки команд, та виберіть Переглянути код з контекстного меню. Дивіться знімок екрана:
doc переміщувати елементи між полем списку 13

8. Скопіюйте та вставте нижче код макросу в Модулі потім збережіть код і закрийте Microsoft Visual Basic для додатків вікно. Дивіться знімок екрана

VBA: Переміщення елементів між двома полями списку

Private Sub Worksheet_Activate()
'UpdatebyExtendoffice20171117
    Dim xCell As Range
    Dim xRg As Range
    Set xRg = Sheets("Admin_Lists").Range("ItemList")
    Me.ListBox1.Clear
    Me.ListBox2.Clear
    With Me.ListBox1
        .LinkedCell = ""
        .ListFillRange = ""
        For Each xCell In xRg
            If xCell <> "" Then
                .AddItem xCell.Value
            End If
        Next xCell
    End With
    Me.ListBox1.MultiSelect = fmMultiSelectMulti
    Me.ListBox2.MultiSelect = fmMultiSelectMulti
End Sub

Private Sub BTN_MoveSelectedLeft_Click()
    Call moveSigle(Me.ListBox2, Me.ListBox1)
End Sub

Private Sub BTN_MoveSelectedRight_Click()
    Call moveSigle(Me.ListBox1, Me.ListBox2)
End Sub

Private Sub BTN_moveAllLeft_Click()
    Call moveAll(Me.ListBox2, Me.ListBox1)
End Sub

Private Sub BTN_moveAllRight_Click()
    Call moveAll(Me.ListBox1, Me.ListBox2)
End Sub

Sub moveAll(xListBox1 As Object, xListBox2 As Object)
    Dim I As Long
    For I = 0 To xListBox1.ListCount - 1
        xListBox2.AddItem xListBox1.List(I)
    Next I
    xListBox1.Clear
End Sub

Sub moveSigle(xListBox1 As Object, xListBox2 As Object)
    Dim I As Long
    For I = 0 To xListBox1.ListCount - 1
        If I = xListBox1.ListCount Then Exit Sub
        If xListBox1.Selected(I) = True Then
            xListBox2.AddItem xListBox1.List(I)
            xListBox1.RemoveItem I
            I = I - 1
        End If
    Next
End Sub

 doc переміщувати елементи між полем списку 14

9. Потім перейдіть на інший аркуш, потім поверніться до аркуша, що містить поле зі списком, тепер ви можете бачити, що дані списку були в списку в першому одному списку. І натисніть на командні кнопки, щоб перемістити елементи між двома полями списку.
doc переміщувати елементи між полем списку 15

Перемістити виділення

doc переміщувати елементи між полем списку 16 doc стрілка вправо doc переміщувати елементи між полем списку 17

Перемістити всіх

doc переміщувати елементи між полем списку 18 doc стрілка вправо doc переміщувати елементи між полем списку 19

Найкращі інструменти продуктивності офісу

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

Покращуйте свої навички Excel за допомогою Kutools для Excel і відчуйте ефективність, як ніколи раніше. Kutools для Excel пропонує понад 300 додаткових функцій для підвищення продуктивності та економії часу.  Натисніть тут, щоб отримати функцію, яка вам найбільше потрібна...

Опис


Вкладка Office Передає інтерфейс із вкладками в Office і значно полегшує вашу роботу

  • Увімкніть редагування та читання на вкладках у Word, Excel, PowerPoint, Publisher, Access, Visio та Project.
  • Відкривайте та створюйте кілька документів на нових вкладках того самого вікна, а не в нових вікнах.
  • Збільшує вашу продуктивність на 50% та зменшує сотні клацань миші для вас щодня!
Comments (1)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
My excel becomes unresponsive after running this code. what could be the problem?
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations