Cách tự động hợp nhất các ô trống trong Excel

Nội dung được viết bởi Bến Hà Trương

Bạn có muốn tự động hợp nhất các ô trống trong bảng tính Excel hay không?

Trong bài viết này, chúng ta sẽ tìm hiểu cách tự động hợp nhất các ô trống ở trên hoặc bên trái một cách tự động như hình minh họa bên dưới.  Mặc dù không có tiện ích tích hợp nào có thể xử lý tác vụ này, nhưng bạn có thể sử dụng các mã macro như hướng dẫn bên dưới.

Hợp nhất các ô trống ở trên

 

Hợp nhất các ô trống ở trên	-->Hợp nhất các ô trống ở trên

 Hợp nhất các ô trống còn lại  

 Hợp nhất các ô trống còn lại	 	 --> Hợp nhất các ô trống còn lại
 

Cách tự động hợp nhất các ô trống trong một cột

Giả sử có một dải dữ liệu trong ba cột và bây giờ bạn muốn hợp nhất dữ liệu ở trên dựa trên cột C. 

Cách hợp nhất các ô trống trong một cột
 

1. Nhấn Alt + F11  để bật cửa sổ Microsoft Visual Basic for Applications và nhấp vào Insert > Module. Xem ảnh chụp màn hình:
 

 hợp nhất tài liệu trống phía trên bên trái

2. Sau đó, dán mã bên dưới vào tập lệnh trống. 

VBA: Hợp nhất trống ở trên dựa trên cột tiếp theo
 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
 

Sub MergeCells()
'UpdatebyExtendoffice2017025
    Dim xRg As Range
    Dim xCell As Range
    Dim xAddress As String
    On Error Resume Next
    xAddress = Application.ActiveWindow.RangeSelection.Address
    Set xRg = Application.InputBox("Select a range:", "Tools For Excel", xAddress, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    For Each xCell In xRg
        If xCell.Value = "" Then
            Range(xCell, xCell.Offset(-1, 0)).Merge
        End If
    Next
End Sub


 

3. Nhấn phím F5 để chạy mã, 

 

4. Nhấn OK , sau đó các ô trống đã được hợp nhất ở trên. Xem ảnh chụp màn hình:

Cách tự động hợp nhất các ô trống trong Excel
 

Cách tự động hợp nhất các ô trống ở trên

Đây là mã macro có thể hợp nhất các ô trống ở trên trong cột được chỉ định.
 

1. Nhấn Alt + F11  để bật cửa sổ Microsoft Visual Basic for Applications và nhấp vào Insert > Module.
 

2. Dán mã dưới đây vào tập lệnh. 

VBA: Hợp nhất các ô trống ở trên
 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 

Sub mergeblankswithabove()
'UpdatebyExtendoffice20171025
    Dim I As Long
    Dim xRow As Long
    Dim xRg As Range
    Dim xCell As Range
    Dim xAddress As String
    On Error Resume Next
    xAddress = Application.ActiveWindow.RangeSelection.Address
    Set xRg = Application.InputBox("Select a range (single column):", "KuTools For Excel", xAddress, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    If xRg.Columns.Count > 1 Then
        MsgBox "Only work for single column", , "Tools For Excel"
        Exit Sub
    End If
    xRow = xRg.Rows.Count
    Set xRg = xRg(xRow)
    For I = xRow To 1 Step -1
        Set xCell = xRg.Offset(I - xRow, 0)
        Debug.Print xCell.Address
        If xCell.Value = "" Then Range(xCell, xCell.Offset(-1, 0)).Merge
    Next
End Sub

 

3. Nhấn phím F5 để chạy mã và  chọn một dải cột trong hộp thoại bật ra. 
 

4. Nhấp vào OK. Và các ô trống trong vùng chọn đã được hợp nhất ở trên.
 

Cách tự động hợp nhất các ô trống trong Excel-->Cách tự động hợp nhất các ô trống trong Excel
 

Cách tự động hợp nhất các ô trống bên trái

Nếu bạn muốn hợp nhất các ô trống bên trái, đoạn mã sau có thể giúp bạn.
 

1. Nhấn Alt + F11  để bật cửa sổ Microsoft Visual Basic for Applications và nhấp vào Insert > Module.

2. Sau đóm dán mã dưới đây vào tập lệnh. 
 

VBA: Hợp nhất các ô trống bên trái

1
2
3
4
5
6
7
8
9
10
11
12
 

Sub mergeblankswithleft()
'UpdatebyExtendoffice20171025
    Dim xRg As Range
    Dim xCell As Range
    Dim xAddress As String
    On Error Resume Next
    xAddress = Application.ActiveWindow.RangeSelection.Address
    Set xRg = Application.InputBox("Select a range:", "Tools For Excel", xAddress, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    For Each xCell In xRg
        If xCell.Value = "" Then Range(xCell, xCell.Offset(0, -1)).Merge
    Next
End Sub

 

3. Nhấn phím F5 để chạy mã, sau đó bạn hãy chọn phạm vi cần hợp nhất.

4. Nhấp vào OK . Các ô trống đã được hợp nhất bên trái.

Cách tự động hợp nhất các ô trống trong Excel-->Cách tự động hợp nhất các ô trống trong Excel

Hy vọng với bài viết này, bạn đã biết cách tự động hợp nhất các ô trong excel. Bên cạnh đó, để không bỏ lỡ những mẹo và thủ thuật tin học văn phòng hữu ích khác, hãy tham gia Gitiho ngay hôm nay.

Xem thêm: 3 cách gộp dòng trong Excel: Gộp nhiều dòng thành một dòng cực nhanh

KHÓA HỌC EXCEL ONLINE HOÀN TOÀN MIỄN PHÍ

Khóa học với hơn 14000 HỌC VIÊN đang học và đánh giá trung bình 4.76 SAO

0/5 - (0 bình chọn)

0/5 - (0 bình chọn)

0 thảo luận

@ 2020 - Bản quyền của Công ty cổ phần công nghệ giáo dục Gitiho Việt Nam
Giấy chứng nhận Đăng ký doanh nghiệp số: 0109077145, cấp bởi Sở kế hoạch và đầu tư TP. Hà Nội
Giấy phép mạng xã hội số: 588, cấp bởi Bộ thông tin và truyền thông