Note: The other languages of the website are Google-translated. Back to English

Làm cách nào để chọn nhiều mục từ danh sách thả xuống vào một ô trong Excel?

Danh sách thả xuống thường được sử dụng trong công việc hàng ngày của Excel. Theo mặc định, chỉ có thể chọn một mục trong danh sách thả xuống. Nhưng trong một số trường hợp, bạn có thể cần phải chọn nhiều mục từ danh sách thả xuống vào một ô duy nhất như hình minh họa bên dưới. Làm thế nào bạn có thể xử lý nó trong Excel?

doc chọn nhiều mục từ danh sách thả xuống 1 mũi tên doc sang phải doc chọn nhiều mục từ danh sách thả xuống 2

Chọn nhiều mục từ danh sách thả xuống vào một ô có VBA

Chọn nhiều mục từ danh sách thả xuống vào một ô với Kutools cho tùy chọn tiện dụng của Excel


Chọn nhiều mục từ danh sách thả xuống vào một ô có VBA

Dưới đây là một số VBA có thể giúp bạn giải quyết công việc này.

Chọn các mục trùng lặp từ danh sách thả xuống trong một ô

1. Sau khi tạo danh sách thả xuống, nhấp chuột phải vào tab trang tính để chọn Mã Chế độ xem từ trình đơn ngữ cảnh.
doc chọn nhiều mục từ danh sách thả xuống 3

2. Sau đó trong Microsoft Visual Basic cho các ứng dụng cửa sổ, sao chép và dán mã bên dưới vào tập lệnh trống.

VBA: Chọn nhiều mục từ danh sách thả xuống trong một ô

Private Sub Worksheet_Change(ByVal Target As Range)
'UpdatebyExtendoffice20221111
    Dim xRgVal As Range
    Dim xStrNew As String
    On Error Resume Next
    Set xRgVal = Cells.SpecialCells(xlCellTypeAllValidation)
    If (Target.Count > 1) Or (xRgVal Is Nothing) Then Exit Sub
    If Intersect(Target, xRgVal) Is Nothing Then Exit Sub
    If Target.Value = "" Then Exit Sub
    Application.EnableEvents = False
    xStrNew = Target.Value
    Application.Undo
    If xStrNew = Target.Value Then
    Else
    xStrNew = xStrNew & " " & Target.Value
    Target.Value = xStrNew
    End If
    Application.EnableEvents = True
End Sub

3. Lưu mã và đóng cửa sổ để quay lại danh sách thả xuống. Bây giờ bạn có thể chọn nhiều mục từ danh sách thả xuống.

Lưu ý:

1. Với VBA, nó phân tách các mục theo khoảng trắng, bạn có thể thay đổi xStrNew = xStrNew & "" & Giá trị của mục tiêu cho những người khác để thay đổi dấu phân cách khi bạn cần. Ví dụ, xStrNew = xStrNew & "," & Giá trị của mục tiêu sẽ ngăn cách các mục bằng dấu phẩy.

2. Mã VBA này hoạt động cho tất cả danh sách thả xuống trong trang tính.

Chọn nhiều mục từ danh sách thả xuống vào một ô mà không lặp lại

Nếu bạn chỉ muốn chọn các mục duy nhất từ ​​danh sách thả xuống vào một ô, bạn có thể lặp lại các bước trên và sử dụng mã bên dưới.

VBA : Chọn nhiều mục từ danh sách thả xuống vào một ô mà không lặp lại

Private Sub Worksheet_Change(ByVal Target As Range)
'UpdatebyExtendoffice20221111
    Dim I As Integer
    Dim xRgVal As Range
    Dim xStrNew As String
    Dim xStrOld As String
    Dim xFlag As Boolean
    Dim xArr
    On Error Resume Next
    Set xRgVal = Cells.SpecialCells(xlCellTypeAllValidation)
    If (Target.Count > 1) Or (xRgVal Is Nothing) Then Exit Sub
    If Intersect(Target, xRgVal) Is Nothing Then Exit Sub
    If Target.Value = "" Then Exit Sub
    Application.EnableEvents = False
    xFlag = True
    xStrNew = " " & Target.Value & " "
    Application.Undo
    xStrOld = Target.Value
    If InStr(1, xStrOld, xStrNew) = 0 Then
        xStrNew = xStrNew & xStrOld & " "
    Else
        xStrNew = xStrOld
    End If
    Target.Value = xStrNew
    Application.EnableEvents = True
End Sub

Cả hai mã VBA trên không hỗ trợ xóa các phần của nội dung ô, chỉ hỗ trợ xóa tất cả các mục của ô.


Chọn nhiều mục từ danh sách thả xuống vào một ô với Kutools cho tùy chọn tiện dụng của Excel

Nếu bạn không quen với mã VBA, bạn có thể cài đặt miễn phí một công cụ tiện dụng - Kutools cho Excel, chứa một nhóm các tiện ích về danh sách thả xuống và có một tùy chọn Danh sách thả xuống nhiều lựa chọn có thể giúp bạn dễ dàng chọn nhiều mục từ danh sách thả xuống vào một ô.

Sau khi tạo danh sách thả xuống, vui lòng chọn các ô danh sách thả xuống và nhấp vào Kutools > Danh sách thả xuống > Danh sách thả xuống nhiều lựa chọn để kích hoạt tiện ích này.
doc kutools multi select danh sách thả xuống 1

Sau đó, các ô danh sách thả xuống đã chọn có thể được chọn nhiều mục vào ô.

Nếu bạn sử dụng tùy chọn này lần đầu tiên, bạn có thể chỉ định cài đặt của tiện ích này khi bạn cần trước khi áp dụng tiện ích này.

Nhấp chuột Kutools > Danh sách thả xuống > mũi tên bên cạnh Danh sách thả xuống nhiều lựa chọn > Cài đặt.
doc kutools multi select danh sách thả xuống 2

Sau đó trong Nhiều lựa chọn Cài đặt danh sách thả xuống hộp thoại, bạn có thể

1) Chỉ định phạm vi áp dụng khi bạn cần;

2) Chỉ định hướng của các mục nơi;

3) Chỉ định dấu phân cách giữa các mục;

4) Chỉ định nếu không thêm các mục trùng lặp và xóa các mục trùng lặp.

Nhấp chuột Ok và nhấp Kutools > Danh sách thả xuống > Danh sách thả xuống nhiều lựa chọn để có hiệu lực.

Mẹo: Để áp dụng Danh sách thả xuống nhiều lựa chọn tiện ích, bạn cần phải cài đặt, dựng lên nó lúc đầu. Nếu bạn muốn tạo một danh sách thả xuống với nhiều cấp độ, tiện ích dưới đây có thể giúp bạn.

Dễ dàng tạo danh sách thả xuống phụ thuộc 2 cấp hoặc nhiều cấp động trong Excel

Trong Excel, để tạo danh sách thả xuống 2 cấp hoặc nhiều cấp rất phức tạp. Đây Danh sách thả xuống động tiện ích của Kutools cho Excel có thể giúp bạn một việc. Những gì bạn chỉ cần làm là sắp xếp dữ liệu như ví dụ được hiển thị, sau đó chọn phạm vi dữ liệu và phạm vi đầu ra, sau đó để nó cho tiện ích.  Nhấp để 30 ngày dùng thử miễn phí!
doc các hàng kết hợp nâng cao
 
Kutools cho Excel: với hơn 300 bổ trợ Excel tiện dụng, dùng thử miễn phí không giới hạn về số lượng 30 ngày

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

Kutools cho Excel giải quyết hầu hết các vấn đề của bạn và tăng 80% năng suất của bạn

  • Tái sử dụng: Chèn nhanh công thức phức tạp, biểu đồ và bất cứ thứ gì bạn đã sử dụng trước đây; Mã hóa ô với mật khẩu; Tạo danh sách gửi thư và gửi email ...
  • Thanh siêu công thức (dễ dàng chỉnh sửa nhiều dòng văn bản và công thức); Bố cục đọc (dễ dàng đọc và chỉnh sửa số lượng ô lớn); Dán vào Dải ô đã Lọchữu ích. Cảm ơn !
  • Hợp nhất các ô / hàng / cột mà không làm mất dữ liệu; Nội dung phân chia ô; Kết hợp các hàng / cột trùng lặp... Ngăn chặn các ô trùng lặp; So sánh các dãyhữu ích. Cảm ơn !
  • Chọn trùng lặp hoặc duy nhất Hàng; Chọn hàng trống (tất cả các ô đều trống); Tìm siêu và Tìm mờ trong Nhiều Sổ làm việc; Chọn ngẫu nhiên ...
  • Bản sao chính xác Nhiều ô mà không thay đổi tham chiếu công thức; Tự động tạo tài liệu tham khảo sang Nhiều Trang tính; Chèn Bullets, Hộp kiểm và hơn thế nữa ...
  • Trích xuất văn bản, Thêm Văn bản, Xóa theo Vị trí, Xóa không gian; Tạo và In Tổng số phân trang; Chuyển đổi giữa nội dung ô và nhận xéthữu ích. Cảm ơn !
  • Siêu lọc (lưu và áp dụng các lược đồ lọc cho các trang tính khác); Sắp xếp nâng cao theo tháng / tuần / ngày, tần suất và hơn thế nữa; Bộ lọc đặc biệt bằng cách in đậm, in nghiêng ...
  • Kết hợp Workbook và WorkSheets; Hợp nhất các bảng dựa trên các cột chính; Chia dữ liệu thành nhiều trang tính; Chuyển đổi hàng loạt xls, xlsx và PDFhữu ích. Cảm ơn !
  • Hơn 300 tính năng mạnh mẽ. Hỗ trợ Office / Excel 2007-2021 và 365. Hỗ trợ tất cả các ngôn ngữ. Dễ dàng triển khai trong doanh nghiệp hoặc tổ chức của bạn. Đầy đủ tính năng Dùng thử miễn phí 30 ngày. Bảo đảm hoàn lại tiền trong 60 ngày.
tab kte 201905

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!
officetab dưới cùng
Nhận xét (26)
Chưa có xếp hạng. Hãy là người đầu tiên xếp hạng!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Sau khi thêm, dữ liệu từ menu thả xuống, xóa không hoạt động.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Tôi tìm thấy cùng một vấn đề. Tôi nghĩ rằng tôi đã tìm ra cách để vượt qua nó. Ở cuối mã, bạn sẽ thấy mã "xStrNew = xStrOld". Thay vào đó, hãy đặt nó thành xStrNew = ""

Nó làm việc cho tôi.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Bất kỳ cơ hội nào bạn vẫn có mã này? Tôi đang cố gắng thực hiện những gì bạn nói nhưng văn bản vẫn bị trùng lặp.
Cảm ơn
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Tôi xin lỗi nhưng tôi không. Tuy nhiên, tôi vừa xem mã ở trên và có vẻ như tác giả đã chỉnh sửa mã theo gợi ý của tôi.

đăng vấn đề của bạn trên chủ đề chính cho bài viết này.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
trong mã đầu tiên, hãy thêm dòng sau vào giữa dòng 6 và 7 (10-11 trong mã thứ hai): If Target.Value = "" Sau đó thoát Sub
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Tôi đã sử dụng "Chọn nhiều mục từ danh sách thả xuống đến một ô mà không lặp lại"
đây là những gì đã xảy ra
1. Nhiều lựa chọn xảy ra mà không có vấn đề gì.
2. Vấn đề là khi tôi cố gắng chỉnh sửa và xóa một tùy chọn. Không có cách nào để tôi xóa một tùy chọn. nó tiếp tục nhân lên.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Bạn sẽ áp dụng chức năng này như thế nào nhưng làm cho nó không có các giá trị thừa? Bất kỳ trợ giúp sẽ được đánh giá cao!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Nếu tôi tạo trang tính có danh sách thả xuống bằng các hộp kiểm, có cách nào để chia sẻ sổ làm việc này với tính năng hộp kiểm này không?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Tôi cũng nhận thấy rằng sau khi chọn nhiều mục bằng mã VBA đã cập nhật, tôi vẫn không thể xóa ô, nó cứ nhân lên.
Có ai có một giải pháp cho điều này được nêu ra?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, Rusty, tôi đã cập nhật mã để làm cho nó ổn định hơn. Nhưng vì ô đang xác thực dữ liệu, ô trống không xác thực dữ liệu, mã không thể giải quyết vấn đề này.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
mã hoạt động nhưng mang trên tất cả các ô và nhân trong các ô và sẽ không cho phép xóa, bạn có thể hỗ trợ không?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Quando quero deletar alguma opção ou todas dá erro. Bộ giải quyết thú có túi?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào! Como puedo usar este codigo para todo un worksheet y no solo para una pestana?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, Vero, Kutools cho Excel Tính năng Danh sách thả xuống nhiều lựa chọn cho phép chọn nhiều mục từ danh sách thả xuống trong toàn bộ trang tính hoặc trên toàn bộ sổ làm việc, chỉ cần chỉ định Phạm vi được chỉ định trong hộp thoại Cài đặt Danh sách thả xuống nhiều lựa chọn.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Làm thế nào tôi có thể làm điều đó cho công thức nắm tay bạn đã cung cấp :) Cảm ơn bạn đã nâng cao!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Bonjour,
selon le premier exemple tout fonctionne très bien jusqu'à ce que je verrouille la feuille.
quand la feuille est verrouillée, je n'ai cộng với le choix bội số!
làm thế nào để làm gì?
cảm ơn trước
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, xin lỗi vì điều đó. Chúng tôi sẽ nâng cấp tính năng của mình phiên bản tiếp theo để tránh sự cố này. Cảm ơn bạn đã feekback của bạn.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Merci BCP
Phiên bản mais à quand la nouvelle?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, phiên bản mới đang được lên kế hoạch, vì phiên bản tiếp theo sẽ nâng cấp nhiều tính năng nên có thể hơi mất thời gian.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, chúng tôi đã cập nhật phiên bản này cho bạn, nhưng đây là phiên bản beta, vui lòng tải xuống từ sau: https://download.extendoffice.com/downloads/Kutools-for-Excel/beta/26.10/KutoolsforExcelSetup.Inno.exe
Nếu có bất kỳ vấn đề nào, hoan nghênh phản hồi của bạn.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
cảm ơn bạn,
Je vais la télécharger và người viết tiểu luận.
Bonne journée
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
mã hoạt động nhưng sẽ không cho phép tôi xóa. Ai đó có thể vui lòng đăng mã mới.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
¿Cómo puedo hacer para que el orden en que se coloque el texto, sea tan cuál como yo quiera?

Ví dụ:
Mi texto para la lista es:
TRAMITAR ESTE ASUNTO
ĐIỀU PHỐI VIÊN
PHÂN TÍCH VÀ KHUYẾN NGHỊ

bạn đã chọn:
TRAMITAR ESTE ASUNTO
PHÂN TÍCH VÀ KHUYẾN NGHỊ

Nó xuất hiện trước mặt tôi
PHÂN TÍCH VÀ KHUYẾN NGHỊ, TRAMITAR ESTE ASUNTO

o sea, los de abajo me aparecen primero, pero quiero que sea en el orden en que voy select...
TRAMITAR ESTE ASUNTO, PHÂN TÍCH VÀ KHUYẾN NGHỊ.....
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào Gorgelys, danh sách thả xuống đa lựa chọn của Kutools có thể giúp ích cho bạn. Các mục bạn đã chọn sẽ theo thứ tự như bạn muốn.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Bạn có thể sử dụng chức năng này với một kế hoạch toàn cảnh không?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, Macros, hãy thử mã bên dưới, nó hỗ trợ chọn nhiều mục trong danh sách thả xuống trong trang tính được bảo vệ.
Private Sub Worksheet_Change(ByVal Target As Range)
'UpdatebyExtendoffice20221111
    Dim xRgVal As Range
    Dim xStrNew As String
    On Error Resume Next  
    xType = 0
    xType = Target.Validation.Type
    If xType <> 3 Then Exit Sub
    If (Target.Count > 1) Then Exit Sub

    If Target.Value = "" Then Exit Sub
    Application.EnableEvents = False
    xStrNew = Target.Value
    Application.Undo
    If xStrNew = Target.Value Then
    Else
    xStrNew = xStrNew & " " & Target.Value
    Target.Value = xStrNew
    End If
    Application.EnableEvents = True
End Sub

Và Kutools cho Excel 26.1 và các phiên bản mới hơn cũng hỗ trợ công việc này trong trang tính được bảo vệ.
Không có bình luận nào được đăng ở đây
Để lại ý kiến ​​của bạn
Đăng với tư cách khách
×
Đánh giá bài viết này:
0   Nhân vật
Các vị trí được đề xuất

Kết nối với chúng tôi

Bản quyền © 2009 - www.extendoffice.com. | Đã đăng ký Bản quyền. cung cấp bởi ExtendOffice. | BẢN ĐỒ CHI NHÁNH
Microsoft và logo Office là các nhãn hiệu hoặc nhãn hiệu đã đăng ký của Microsoft Corporation tại Hoa Kỳ và / hoặc các quốc gia khác.
Được bảo vệ bởi Sectigo SSL