Làm cách nào để nối các hàng thành một ô dựa trên nhóm trong Excel?
Đây là một phạm vi gồm hai cột, một là danh sách lớp, và cột kia là danh sách tên học sinh. Như bạn thấy, một số học sinh học cùng lớp, một số không. Bây giờ tôi muốn nối các sinh viên trong cùng một lớp thành một ô như hình minh họa bên dưới, làm cách nào để xử lý nhanh trong Excel?
Nhóm và nối với các công thức và chức năng Bộ lọc
Nhóm và nối với các hàng kết hợp nâng cao
Nhóm và nối với các công thức và chức năng Bộ lọc
Trong Excel, bạn có thể áp dụng công thức cho các hàng được nối dựa trên một cột, sau đó sử dụng chức năng Bộ lọc để chỉ hiển thị kết quả.
Chú thích: Bạn cần sắp xếp dữ liệu của mình theo lớp trước khi làm theo các bước.
1. Trong ô trống bên cạnh phạm vi dữ liệu, ví dụ: C13, hãy nhập công thức này =IF(A13=A12,C12&", "&B13,B13), nhấn Enter và điền công thức vào các ô bằng thao tác kéo điền.
Trong công thức, A13 là dữ liệu đầu tiên trong cột “Lớp”, B13 là dữ liệu đầu tiên trong cột “Tên”, “,” là dấu phân tách để phân tách các nội dung nối.
2. Sau đó, trong cột tiếp theo, D13, nhập công thức này =IF(A13<>A14,"Last","") và kéo chốt điền xuống để áp dụng công thức cho các ô bạn cần.
3. Bây giờ hãy chọn tất cả phạm vi dữ liệu bao gồm các công thức và nhấp vào Ngày > Filter thêm Filter icons vào dữ liệu.
4. Nhấp vào Filter icon trong tiêu đề công thức cuối cùng, hãy kiểm tra Last chỉ hộp kiểm từ danh sách thả xuống và nhấp vào OK.
Bây giờ kết quả được hiển thị như bên dưới, bạn có thể loại bỏ cột trợ giúp cuối cùng nếu bạn không cần đến nó.
Nhóm và nối với mã VBA
Đây là mã VBA cũng có thể xử lý công việc này.
1. nhấn Alt + F11 các phím để kích hoạt Microsoft Visual Basic for Applications cửa sổ.
2. Sau đó trong cửa sổ, nhấp vào Tools > References để cho phép References hộp thoại và kiểm tra Microsoft Scripting Runtime. Xem ảnh chụp màn hình:
3. nhấp chuột OK, Và nhấp vào Insert > Module trong cửa sổ VBA và sao chép và dán mã VBA bên dưới vào Module kịch bản. Xem ảnh chụp màn hình:
VBA: Nối các hàng thành một ô dựa trên nhóm
Sub ConcatenateCellsIfSameValues()
'UpdatebyExtendoffice20180201
Dim I As Long
Dim J As Long
Dim xRg As Range
Dim xRgKey As Range
Dim xRgVal As Range
Dim xStr As String
Dim xDic As New Dictionary
On Error Resume Next
Set xRg = Application.InputBox("Select data range", "KuTools for Excel", Selection.Address, , , , , 8)
If xRg Is Nothing Then Exit Sub
Set xRgKey = Application.InputBox("Select key column", "KuTools for Excel", xRg.Columns(1).Address, , , , , 8)
If xRgKey Is Nothing Then
MsgBox "Key column cannot be empty", vbInformation, "KuTools for Excel"
End If
Set xRgVal = xRg(1).Offset(, 1).Resize(xRg.Rows.Count, xRg.Columns.Count - 1)
For I = 1 To xRgKey.Count
If I > xRgKey.Count Then Exit For
xStr = ""
For J = 1 To xRgVal.Columns.Count
xStr = xStr & " " & xRgVal(I, J)
Next
If xDic.Exists(xRgKey(I).Text) Then
xDic(xRgKey(I).Text) = xDic(xRgKey(I).Text) & xStr
xRgKey(I).EntireRow.Delete
I = I - 1
Else
xDic.Add xRgKey(I).Text, xStr
End If
Next
For I = 1 To xRgVal.Count
xRgVal(I).Value = xDic(xRgKey(I).Text)
Next
End Sub
4. nhấn F5 và chọn phạm vi dữ liệu bạn sử dụng trong hộp thoại bật lên.
5. nhấp chuột OK để chọn cột chính mà bạn muốn nhóm lại.
6. nhấp chuột OK, bây giờ kết quả được hiển thị như sau:
Nhóm và nối với các hàng kết hợp nâng cao
Đây là một tiện ích trong Kutools cho Excel, Advanced Combine Hàng, có thể kết hợp các hàng hoặc thực hiện các phép tính dựa trên một cột chính trong Excel.
Kutools cho Excel, với hơn 300 chức năng tiện dụng, giúp công việc của bạn dễ dàng hơn. |
Sau khi cài đặt Kutools cho Excel, vui lòng làm như sau:(Tải xuống miễn phí Kutools cho Excel ngay!)
1. Chọn phạm vi dữ liệu bạn sử dụng và nhấp vào Kutools > Hợp nhất & Tách > Các hàng kết hợp nâng cao.
2. bên trong Advanced Combine Rows cửa sổ, chọn cột mà bạn muốn kết hợp các hàng dựa trên và nhấp vào Primary Key để đặt nó làm cột chính.
3. Chọn cột bạn cần kết hợp, nhấp vào Combinevà chọn một dấu phân cách bạn sử dụng để phân tách các nội dung được kết hợp.
4. nhấp chuột Ok. Kết quả được hiển thị như sau:
Chú thích: Trước khi áp dụng tiện ích, bạn nên có một bản sao của dữ liệu gốc.
Demo
Công cụ năng suất văn phòng tốt nhất
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...
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!