Bỏ qua nội dung chính

Làm cách nào để nhanh chóng di chuyển các mục giữa hai hộp danh sách trong Excel?

Bạn đã bao giờ cố gắng di chuyển các mục từ một hộp danh sách này sang một hộp danh sách khác khi bạn cần như hình minh họa bên dưới chưa? Ở đây tôi sẽ nói về thao tác này trong Excel.

doc di chuyển các mục giữa hộp danh sách 1 mũi tên doc sang phải doc di chuyển các mục giữa hộp danh sách 2

Di chuyển các mục giữa các hộp danh sách


Di chuyển các mục giữa các hộp danh sách

Không có chức năng tích hợp nào có thể giúp bạn hoàn thành công việc, nhưng tôi có mã VBA có thể giúp bạn.

1. Trước tiên, bạn cần tạo một danh sách dữ liệu sẽ được hiển thị dưới dạng các mục trong hộp danh sách trong một trang tính mới được gọi là Danh sách quản trị viên.
doc di chuyển các mục giữa hộp danh sách 3

2. Sau đó chọn những dữ liệu này và chuyển đến Họ tên hộp để đặt tên cho họ Danh sách vật phẩm. Xem ảnh chụp màn hình:
doc di chuyển các mục giữa hộp danh sách 4

3. Sau đó, trong một trang tính sẽ chứa hai hộp danh sách, hãy nhấp vào Nhà phát triển > Chèn > Hộp danh sách (Điều khiển X hoạt động)và vẽ hai hộp danh sách. Xem ảnh chụp màn hình:

doc di chuyển các mục giữa hộp danh sách 5 mũi tên doc sang phải doc di chuyển các mục giữa hộp danh sách 6

Nếu Nhà phát triển tab bị ẩn dải băng của bạn, Làm thế nào để hiển thị / hiển thị tab nhà phát triển trong Excel 2007/2010/2013 Ribbon? bài viết này sẽ cho bạn biết làm thế nào để hiển thị nó.

4. Sau đó nhấn vào Nhà phát triển > Chèn > Nút lệnh (Điều khiển X chủ động), và vẽ bốn nút giữa hai hộp danh sách. Xem ảnh chụp màn hình:

doc di chuyển các mục giữa hộp danh sách 7 mũi tên doc sang phải doc di chuyển các mục giữa hộp danh sách 8

Bây giờ để đổi tên bốn nút lệnh bằng tên mới.

5. Chọn nút lệnh đầu tiên, nhấp vào Bất động sản, và trong Bất động sản ngăn, đặt tên BTN_moveAllRight vào nó và gõ >> vào hộp văn bản bên cạnh Chú thích. Xem ảnh chụp màn hình:
doc di chuyển các mục giữa hộp danh sách 9

6. Lặp lại bước 5 để đổi tên ba nút lệnh cuối cùng với các tên bên dưới, đồng thời gõ mũi tên khác vào chú thích. Xem ảnh chụp màn hình:

BTN_MoveSelectedRight

BTN_moveTất cảTrái

BTN_MoveSelectedLeft

doc di chuyển các mục giữa hộp danh sách 10 doc di chuyển các mục giữa hộp danh sách 11 doc di chuyển các mục giữa hộp danh sách 12

7. Nhấp chuột phải vào tên trang tính chứa các hộp danh sách và các nút lệnh, và chọn Mã Chế độ xem từ menu ngữ cảnh. Xem ảnh chụp màn hình:
doc di chuyển các mục giữa hộp danh sách 13

8. Sao chép và dán mã macro bên dưới vào Mô-đun sau đó lưu mã và đóng Microsoft Visual Basic cho các ứng dụng cửa sổ. Xem ảnh chụp màn hình

VBA: Di chuyển các mục giữa hai hộp danh sách

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 di chuyển các mục giữa hộp danh sách 14

9. Sau đó sang sheet khác rồi quay lại sheet chứa hộp danh sách, lúc này bạn có thể thấy danh sách dữ liệu đã được liệt kê trong hộp danh sách đầu tiên. Và nhấp vào các nút lệnh để di chuyển các mục giữa hai hộp danh sách.
doc di chuyển các mục giữa hộp danh sách 15

Di chuyển lựa chọn

doc di chuyển các mục giữa hộp danh sách 16 mũi tên doc sang phải doc di chuyển các mục giữa hộp danh sách 17

Di chuyển tất cả

doc di chuyển các mục giữa hộp danh sách 18 mũi tên doc sang phải doc di chuyển các mục giữa hộp danh sách 19

Công cụ năng suất văn phòng tốt nhất

🤖 Trợ lý AI của Kutools: Cách mạng hóa việc phân tích dữ liệu dựa trên: Thực thi thông minh   |  Tạo mã  |  Tạo công thức tùy chỉnh  |  Phân tích dữ liệu và tạo biểu đồ  |  Gọi các hàm Kutools...
Các tính năng phổ biến: Tìm, đánh dấu hoặc xác định các bản sao   |  Xóa hàng trống   |  Kết hợp các cột hoặc ô mà không làm mất dữ liệu   |   Vòng không có công thức hữu ích. Cảm ơn !
Siêu tra cứu: Nhiều tiêu chí VLookup    VLookup Nhiều Giá Trị  |   VLookup trên nhiều trang tính   |   Tra cứu mờ ....
Danh sách thả xuống nâng cao: Tạo nhanh danh sách thả xuống   |  Danh sách thả xuống phụ thuộc   |  Danh sách thả xuống nhiều lựa chọn ....
Trình quản lý cột: Thêm một số cột cụ thể  |  Di chuyển cột  |  Chuyển đổi trạng thái hiển thị của các cột ẩn  |  So sánh dãy và cột hữu ích. Cảm ơn !
Các tính năng nổi bật: Tiêu điểm lưới   |  Chế độ xem thiết kế   |   Thanh công thức lớn    Trình quản lý sổ làm việc & trang tính   |  Thư viện tài nguyên (Văn bản tự động)   |  Bảng chọn ngày   |  Kết hợp các bảng tính   |  Mã hóa/Giải mã ô    Gửi email theo danh sách   |  Siêu lọc   |   Bộ lọc đặc biệt (lọc in đậm/nghiêng/gạch ngang...) ...
15 bộ công cụ hàng đầu12 bản văn CÔNG CỤ (thêm văn bản, Xóa ký tự,...)   |   50 + Biểu đồ Các loại (Biểu đồ Gantt,...)   |   40+ Thực tế Công thức (Tính tuổi dựa trên ngày sinh,...)   |   19 chèn CÔNG CỤ (Chèn mã QR, Chèn ảnh từ đường dẫn,...)   |   12 Chuyển đổi CÔNG CỤ (Số thành từ, Chuyển đổi tiền tệ,...)   |   7 Hợp nhất & Tách CÔNG CỤ (Các hàng kết hợp nâng cao, Chia ô,...)   |   ... và nhiều hơn nữa

Nâng cao kỹ năng Excel của bạn với Kutools for Excel và trải nghiệm hiệu quả hơn bao giờ hết. Kutools for Excel cung cấp hơn 300 tính năng nâng cao để tăng năng suất và tiết kiệm thời gian.  Bấm vào đây để có được tính năng bạn cần nhất...

Mô tả


Tab Office mang lại giao diện Tab cho Office và giúp công việc của bạn trở nên dễ dàng hơn nhiều

  • Cho phép chỉnh sửa và đọc theo thẻ trong Word, Excel, PowerPoint, Publisher, Access, Visio và Project.
  • Mở và tạo nhiều tài liệu trong các tab mới của cùng một cửa sổ, thay vì trong các cửa sổ mới.
  • Tăng 50% năng suất của bạn và giảm hàng trăm cú nhấp chuột cho bạn mỗi ngày!
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