Consell: altres idiomes es tradueixen en Google. Pots visitar el English versió d'aquest enllaç.
Iniciar Sessió
x
or
x
x
Registre
x

or

Com moure ràpidament els elements entre dos quadres de llista a Excel?

Alguna vegada has intentat moure els ítems des d'un quadre de llista fins a un altre quadre de llista que necessiteu tal com es mostra a continuació? Aquí parlaré d'aquesta operació a Excel.

mou els documents entre el quadre de llista 1 doc fletxa dreta mou els documents entre el quadre de llista 2

Mou elements entre els quadres de llista


Mou elements entre els quadres de llista


No hi ha cap funció integrada que us ajudi a acabar el treball, però tinc un codi VBA que pot fer un favor.

1. En primer lloc, haureu de crear una llista de dades que es mostrarà com a elements en els quadres de llista en un full nou anomenat Admin_Lists.
mou els documents entre el quadre de llista 3

2. A continuació, seleccioneu aquestes dades i aneu al Nom quadre per donar-los un nom Llista d'elements. Mostra la captura de pantalla:
mou els documents entre el quadre de llista 4

3. A continuació, en un full que contindrà els dos quadres de llista, feu clic a Revelador > Insereix > Quadre de llista (control actiu X), i dibuixeu dos quadres de llista. Mostra la captura de pantalla:

mou els documents entre el quadre de llista 5 doc fletxa dreta mou els documents entre el quadre de llista 6

Si el Revelador la pestanya està oculta la teva cinta, Com mostrar fitxa Programador / exhibició en 2007 2010 / cinta Excel / 2013? aquest article us explicarà com mostrar-lo.

4. A continuació, feu clic a Revelador > Insereix > Botó de comandament (Control actiu X), i dibuixeu quatre botons entre dos quadres de llista. Mostra la captura de pantalla:

mou els documents entre el quadre de llista 7 doc fletxa dreta mou els documents entre el quadre de llista 8

Ara podeu canviar el nom dels quatre botons de comanda amb noms nous.

5. Seleccioneu el primer botó de comandament, feu clic a Propietats, i al Propietats panell, dóna un nom BTN_moveAllRight a ell i escriu >> a la caixa de text al costat Títol. Mostra la captura de pantalla:
mou els documents entre el quadre de llista 9

6. Repetiu el pas 5 per canviar el nom del darrer botó de comanda amb els noms següents, i també escriviu la fletxa diferent a les llegendes. Mostra la captura de pantalla:

BTN_MoveSelectedRight

BTN_moveAllLeft

BTN_MoveSelectedLeft

mou els documents entre el quadre de llista 10 mou els documents entre el quadre de llista 11 mou els documents entre el quadre de llista 12

7. Feu clic amb el botó dret al nom del full que conté els quadres de llista i els botons de comanda i seleccioneu Veure codi des del menú contextual. Mostra la captura de pantalla:
mou els documents entre el quadre de llista 13

8. Copieu i enganxeu sota el codi de macro al Mòduls script guarda el codi i tanca el Microsoft Visual Basic per a aplicacions finestra. Veure captura de pantalla

VBA: mou elements entre dos quadres de llista

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

mou els documents entre el quadre de llista 14

9. A continuació, vagi a un altre full i després torneu al full que conté els quadres de llista, ara podeu veure que les dades de la llista s'han inclòs al primer quadre de llista. I feu clic als botons de comanda per moure els elements entre dos quadres de llista.
mou els documents entre el quadre de llista 15

Mou la selecció

mou els documents entre el quadre de llista 16 doc fletxa dreta mou els documents entre el quadre de llista 17

Mou-ho tot

mou els documents entre el quadre de llista 18 doc fletxa dreta mou els documents entre el quadre de llista 19


Eines de productivitat recomanades

Pestanya d'Office

estrella d&#39;or1 Porteu les pestanyes pràctiques a l'Excel i a un altre programari d'Office, igual que Chrome, Firefox i el nou Internet Explorer.

Kutools for Excel

estrella d&#39;or1 Increïble! Incrementeu la productivitat en 5 minuts. No necessites cap habilitat especial, estalvieu dues hores cada dia.

estrella d&#39;or1 300 Noves característiques per a Excel, Excel molt fàcil i potent:

  • Combina cel·les / files / columnes sense perdre dades.
  • Combina i consolida diverses fulles i llibres.
  • Comparar intervals, copiar diversos rangs, convertir text a data, unitat i conversió de divises.
  • Compte per colors, subtotals de paginació, classificació avançada i filtre súper,
  • Més Seleccioneu / Insereix / Suprimeix / Text / Format / Enllaç / Comentari / Llibres / Eines de full de càlcul ...

Tret de pantalla de Kutools per a Excel

Say something here...
symbols left.
You are guest ( Sign Up? )
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 · 4 months ago
    My excel becomes unresponsive after running this code. what could be the problem?