Note: The other languages of the website are Google-translated. Back to English
Увійти  \/ 
x
or
x
Реєстрація  \/ 
x

or

Як швидко перемістити елементи між двома полями списку в 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 для Excel вирішує більшість ваших проблем і збільшує продуктивність на 80%

  • Повторне використання: Швидко вставте складні формули, діаграми і все, що ви використовували раніше; Шифрувати комірки з паролем; Створити список розсилки та надсилати електронні листи ...
  • Супер формула бар (легко редагувати кілька рядків тексту та формули); Макет читання (легко читати та редагувати велику кількість комірок); Вставте у відфільтрований діапазон...
  • Об’єднати клітинки / рядки / стовпці без втрати даних; Вміст розділених комірок; Об'єднати повторювані рядки / стовпці... Запобігання дублюючим клітинам; Порівняйте діапазони...
  • Виберіть Повторюваний або Унікальний Рядки; Виберіть Пусті рядки (усі клітинки порожні); Супер знахідка та нечітка знахідка у багатьох робочих зошитах; Випадковий вибір ...
  • Точна копія Кілька клітинок без зміни посилання на формулу; Автоматичне створення посилань на кілька аркушів; Вставте кулі, Прапорці та інше ...
  • Витяг тексту, Додати текст, Видалити за позицією, Видаліть пробіл; Створення та друк проміжних підсумків підкачки; Перетворення вмісту комірок та коментарів...
  • Супер фільтр (зберегти та застосувати схеми фільтрів до інших аркушів); Розширене сортування за місяцем / тижнем / днем, частотою та іншим; Спеціальний фільтр жирним, курсивом ...
  • Поєднайте робочі зошити та робочі аркуші; Об’єднати таблиці на основі ключових стовпців; Розділіть дані на кілька аркушів; Пакетне перетворення xls, xlsx та PDF...
  • Понад 300 потужних функцій. Підтримує Office / Excel 2007-2019 та 365. Підтримує всі мови. Простота розгортання на вашому підприємстві чи в організації. Повна функція 30-денної безкоштовної пробної версії. 60-денна гарантія повернення грошей.
вкладка kte 201905

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

  • Увімкніть редагування та читання на вкладках у Word, Excel, PowerPoint, Publisher, Access, Visio та Project.
  • Відкривайте та створюйте кілька документів на нових вкладках того самого вікна, а не в нових вікнах.
  • Збільшує вашу продуктивність на 50% та зменшує сотні клацань миші для вас щодня!
дно офісної таблиці
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Pius · 3 years ago
    My excel becomes unresponsive after running this code. what could be the problem?