Preskoči na glavno vsebino

Kako hitro premakniti elemente med dvema seznamoma v Excelu?

Avtor: Sonce Zadnja sprememba: 2018-12-12

Ste že kdaj poskusili premakniti elemente iz enega seznamskega polja v drugo en seznam, kot potrebujete, kot je prikazano na spodnji sliki zaslona? Tukaj bom govoril o tej operaciji v Excelu.

doc premika elemente med seznamom 1 doc puščica desno doc premika elemente med seznamom 2

Premaknite elemente med polji s seznami


Premaknite elemente med polji s seznami

Vgrajena funkcija vam ne more pomagati dokončati dela, vendar imam kodo VBA, ki vam lahko pomaga.

1. Najprej morate ustvariti seznam podatkov, ki bodo prikazani kot elementi v seznamskih poljih na novem listu, ki je poklican Admin_Lists.
doc premika elemente med seznamom 3

2. Nato izberite te podatke in pojdite na Ime polje, da jim daste ime Seznam predmetov. Oglejte si posnetek zaslona:
doc premika elemente med seznamom 4

3. Nato na listu, ki bo vseboval dve polji s seznamom, kliknite Razvojni > Vstavi > List List (Active X Control)in narišite dve polji s seznamom. Oglejte si posnetek zaslona:

doc premika elemente med seznamom 5 doc puščica desno doc premika elemente med seznamom 6

Če Razvojni zavihek je skrit vaš trak, Kako prikazati / prikazati zavihek za razvijalce v traku Excel 2007/2010/2013? ta članek vam bo povedal, kako to pokazati.

4. Nato kliknite Razvojni > Vstavi > Gumb za ukaze (Active X Control)in narišite štiri gumbe med dvema seznamoma. Oglejte si posnetek zaslona:

doc premika elemente med seznamom 7 doc puščica desno doc premika elemente med seznamom 8

Zdaj pa preimenujte štiri ukazne gumbe z novimi imeni.

5. Izberite prvi ukazni gumb, kliknite Nepremičnine, in v Nepremičnine podokno, navedite ime BTN_moveAllRight in vnesite >> v besedilno polje poleg napis. Oglejte si posnetek zaslona:
doc premika elemente med seznamom 9

6. Ponovite 5. korak, da preimenujete zadnje tri ukazne gumbe s spodnjimi imeni in v napise vnesite tudi drugo puščico. Oglejte si posnetek zaslona:

BTN_PremakniIzbranoDesno

BTN_premakniVseLevo

BTN_Premakni izbranolevo

doc premika elemente med seznamom 10 doc premika elemente med seznamom 11 doc premika elemente med seznamom 12

7. Z desno miškino tipko kliknite ime lista, ki vsebuje seznamska polja in ukazne gumbe, in izberite Ogled kode iz kontekstnega menija. Oglejte si posnetek zaslona:
doc premika elemente med seznamom 13

8. Kopirajte in prilepite spodnjo kodo makra v Moduli skript, nato shranite kodo in zaprite Microsoft Visual Basic za aplikacije okno. Oglejte si posnetek zaslona

VBA: premikanje elementov med dvema seznamoma

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 premika elemente med seznamom 14

9. Nato pojdite na drug list, nato se vrnite na list, ki vsebuje polja s seznamom, zdaj lahko vidite, da so bili podatki seznama v prvem seznamskem polju. In kliknite na ukazne gumbe, da premikate elemente med dvema seznamoma.
doc premika elemente med seznamom 15

Premakni izbor

doc premika elemente med seznamom 16 doc puščica desno doc premika elemente med seznamom 17

Premakni vse

doc premika elemente med seznamom 18 doc puščica desno doc premika elemente med seznamom 19

Najboljša pisarniška orodja za produktivnost

🤖 Kutools AI Aide: Revolucionirajte analizo podatkov na podlagi: Inteligentna izvedba   |  Ustvari kodo  |  Ustvarite formule po meri  |  Analizirajte podatke in ustvarite grafikone  |  Prikličite funkcije Kutools...
Priljubljene funkcije: Poiščite, označite ali identificirajte dvojnike   |  Izbriši prazne vrstice   |  Združite stolpce ali celice brez izgube podatkov   |   Krog brez formule ...
Super iskanje: Več kriterijev VLookup    Multiple Value VLookup  |   VLookup na več listih   |   Nejasno iskanje ....
Napredni spustni seznam: Hitro ustvarite spustni seznam   |  Odvisni spustni seznam   |  Večkrat izberite spustni seznam ....
Upravitelj stolpcev: Dodajte določeno število stolpcev  |  Premakni stolpce  |  Preklop stanja vidnosti skritih stolpcev  |  Primerjaj obsege in stolpce ...
Predstavljene funkcije: Mrežni fokus   |  Pogled oblikovanja   |   Velika vrstica formule    Upravitelj delovnih zvezkov in listov   |  Knjižnica virov (Samodejno besedilo)   |  Izbirnik datuma   |  Združite delovne liste   |  Šifriranje/dešifriranje celic    Pošljite e-pošto po seznamu   |  Super filter   |   Poseben filter (filter krepko/ležeče/prečrtano ...) ...
15 najboljših kompletov orodij12 Besedilo Orodja (dodajanje besedila, Odstrani znake,...)   |   50 + Graf Vrste (Gantt Chart,...)   |   40+ Praktično Formule (Izračunajte starost glede na rojstni dan,...)   |   19 vstavljanje Orodja (Vstavite kodo QR, Vstavi sliko s poti,...)   |   12 Pretvorba Orodja (Številke v besede, Pretvorba valut,...)   |   7 Spoji in razdeli Orodja (Napredne kombinirane vrstice, Razdeljene celice,...)   |   ... in več

Napolnite svoje Excelove spretnosti s Kutools za Excel in izkusite učinkovitost kot še nikoli prej. Kutools za Excel ponuja več kot 300 naprednih funkcij za povečanje produktivnosti in prihranek časa.  Kliknite tukaj, če želite pridobiti funkcijo, ki jo najbolj potrebujete...

Opis


Kartica Office prinaša vmesnik z zavihki v Office in poenostavi vaše delo

  • Omogočite urejanje in branje z zavihki v Wordu, Excelu, PowerPointu, Publisher, Access, Visio in Project.
  • Odprite in ustvarite več dokumentov v novih zavihkih istega okna in ne v novih oknih.
  • Poveča vašo produktivnost za 50%in vsak dan zmanjša na stotine klikov miške za vas!
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
Leave your comments
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations