Przejdź do głównej zawartości

Jak szybko przenosić elementy między dwoma listami w programie Excel?

Czy kiedykolwiek próbowałeś przenieść elementy z jednego pola listy do drugiego, tak jak potrzebujesz, jak pokazano na poniższym zrzucie ekranu? Tutaj opowiem o tej operacji w Excelu.

doc przenosi elementy między oknem listy 1 strzałka doc w prawo doc przenosi elementy między oknem listy 2

Przenoszenie elementów między listami wartości


Przenoszenie elementów między listami wartości

Nie ma wbudowanej funkcji, która mogłaby pomóc w zakończeniu pracy, ale mam kod VBA, który może zrobić przysługę.

1. Po pierwsze, musisz utworzyć listę danych, które będą wyświetlane jako pozycje w listach wartości w nowym arkuszu o nazwie Listy_administratorów.
doc przenosi elementy między oknem listy 3

2. Następnie wybierz te dane i przejdź do Imię pole, aby nadać im nazwę Lista przedmiotów. Zobacz zrzut ekranu:
doc przenosi elementy między oknem listy 4

3. Następnie w arkuszu, który będzie zawierał dwa pola listy, kliknij Deweloper > wstawka > Pole listy (aktywna kontrolka X)i narysuj dwa pola listy. Zobacz zrzut ekranu:

doc przenosi elementy między oknem listy 5 strzałka doc w prawo doc przenosi elementy między oknem listy 6

Jeśli Deweloper zakładka jest ukryta twoja wstążka, Jak wyświetlić / wyświetlić kartę programisty na wstążce programu Excel 2007/2010/2013? w tym artykule dowiesz się, jak to pokazać.

4. Następnie kliknij Deweloper > wstawka > Przycisk polecenia (Active X Control)i narysuj cztery przyciski między dwoma polami listy. Zobacz zrzut ekranu:

doc przenosi elementy między oknem listy 7 strzałka doc w prawo doc przenosi elementy między oknem listy 8

Teraz, aby zmienić nazwy czterech przycisków poleceń na nowe nazwy.

5. Wybierz pierwszy przycisk polecenia, kliknij Właściwości, oraz w Właściwości okienko, podaj nazwę BTN_moveAllRight do niego i wpisz >> w pole tekstowe obok Podpis. Zobacz zrzut ekranu:
doc przenosi elementy między oknem listy 9

6. Powtórz krok 5, aby zmienić nazwę ostatnich trzech przycisków polecenia z poniższymi nazwami, a także wpisz inną strzałkę w podpisach. Zobacz zrzut ekranu:

BTN_MoveSelectedW prawo

BTN_moveAllLeft

BTN_PrzesuńWybraneW lewo

doc przenosi elementy między oknem listy 10 doc przenosi elementy między oknem listy 11 doc przenosi elementy między oknem listy 12

7. Kliknij prawym przyciskiem myszy nazwę arkusza, który zawiera pola list i przyciski poleceń, i wybierz Wyświetl kod z menu kontekstowego. Zobacz zrzut ekranu:
doc przenosi elementy między oknem listy 13

8. Skopiuj i wklej poniższy kod makra do pliku Moduł skrypt, a następnie zapisz kod i zamknij plik Microsoft Visual Basic for Applications okno. Zobacz zrzut ekranu

VBA: Przenieś elementy między dwoma polami listy

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 przenosi elementy między oknem listy 14

9. Następnie przejdź do innego arkusza, a następnie wróć do arkusza zawierającego pola listy. Teraz możesz zobaczyć, że dane listy zostały wymienione w pierwszym polu listy. I kliknij przyciski poleceń, aby przenieść elementy między dwoma polami listy.
doc przenosi elementy między oknem listy 15

Przenieś zaznaczenie

doc przenosi elementy między oknem listy 16 strzałka doc w prawo doc przenosi elementy między oknem listy 17

Przenieś wszystko

doc przenosi elementy między oknem listy 18 strzałka doc w prawo doc przenosi elementy między oknem listy 19

Najlepsze narzędzia biurowe

🤖 Pomocnik AI Kutools: Zrewolucjonizuj analizę danych w oparciu o: Inteligentne wykonanie   |  Wygeneruj kod  |  Twórz niestandardowe formuły  |  Analizuj dane i generuj wykresy  |  Wywołaj funkcje Kutools...
Popularne funkcje: Znajdź, wyróżnij lub zidentyfikuj duplikaty   |  Usuń puste wiersze   |  Łącz kolumny lub komórki bez utraty danych   |   Okrągły bez wzoru ...
Super wyszukiwanie: Wiele kryteriów VLookup    Wiele wartości VLookup  |   Przeglądanie pionowe na wielu arkuszach   |   Wyszukiwanie rozmyte ....
Zaawansowana lista rozwijana: Szybko twórz listę rozwijaną   |  Zależna lista rozwijana   |  Lista rozwijana wielokrotnego wyboru ....
Menedżer kolumn: Dodaj określoną liczbę kolumn  |  Przesuń kolumny  |  Przełącz stan widoczności ukrytych kolumn  |  Porównaj zakresy i kolumny ...
Polecane funkcje: Fokus siatki   |  Widok projektu   |   Duży pasek formuły    Menedżer skoroszytów i arkuszy   |  Biblioteka zasobów (Automatyczny tekst)   |  Selektor dat   |  Połącz arkusze   |  Szyfruj/odszyfruj komórki    Wysyłaj e-maile według listy   |  Super filtr   |   Specjalny filtr (filtruj pogrubienie/kursywa/przekreślenie...) ...
15 najlepszych zestawów narzędzi12 Tekst Tools (Dodaj tekst, Usuń znaki, ...)   |   50 + Wykres rodzaje (Wykres Gantta, ...)   |   40+ Praktyczne Wzory (Oblicz wiek na podstawie urodzin, ...)   |   19 Wprowadzenie Tools (Wstaw kod QR, Wstaw obraz ze ścieżki, ...)   |   12 Konwersja Tools (Liczby na słowa, Przeliczanie walut, ...)   |   7 Połącz i podziel Tools (Zaawansowane wiersze łączenia, Podział komórki, ...)   |   ... i więcej

Zwiększ swoje umiejętności Excela dzięki Kutools for Excel i doświadcz wydajności jak nigdy dotąd. Kutools dla programu Excel oferuje ponad 300 zaawansowanych funkcji zwiększających produktywność i oszczędzających czas.  Kliknij tutaj, aby uzyskać funkcję, której najbardziej potrzebujesz...

Opis


Karta Office wprowadza interfejs z zakładkami do pakietu Office i znacznie ułatwia pracę

  • Włącz edycję i czytanie na kartach w programach Word, Excel, PowerPoint, Publisher, Access, Visio i Project.
  • Otwieraj i twórz wiele dokumentów w nowych kartach tego samego okna, a nie w nowych oknach.
  • Zwiększa produktywność o 50% i redukuje setki kliknięć myszką każdego dnia!
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