Bỏ qua nội dung chính

Làm cách nào để nối các giá trị ô cho đến khi tìm thấy ô trống trong một cột?

doc nối cho đến khi trống 1

Ví dụ: tôi có một danh sách các giá trị bao gồm một số ô trống và bây giờ, tôi muốn nối từng bộ dữ liệu giữa các ô trống vào một ô và liệt kê các giá trị được kết hợp trong một cột khác như ảnh chụp màn hình sau. Làm cách nào để nối các ô cho đến khi tìm thấy ô trống trong một cột?

Nối các giá trị ô cho đến khi tìm thấy ô trống trong cột có mã VBA

Nối các giá trị ô cho đến khi tìm thấy ô trống trong một cột bằng Kutools cho Excel


mũi tên màu xanh bong bóng bên phải Nối các giá trị ô cho đến khi tìm thấy ô trống trong cột có mã VBA

Không có cách trực tiếp nào để bạn nối một tập hợp các ô giữa các ô trống, nhưng bạn có thể áp dụng mã VBA sau để xử lý nó. Vui lòng làm như sau:

1. Giữ ALT + F11 phím để mở Cửa sổ Microsoft Visual Basic for Applications.

2. Nhấp chuột Chèn > Mô-đunvà dán mã sau vào Cửa sổ mô-đun.

Mã VBA: nối các giá trị ô cho đến khi tìm thấy ô trống

Sub Concatenatecells()
'updateby Extendoffice
    Dim xRg As Range
    Dim xSaveToRg As Range
    Dim xTxt As String
    Dim xCell As Range
    Dim xTStr As String
    On Error Resume Next
    xTxt = ActiveWindow.RangeSelection.Address
    Set xRg = Application.InputBox("Please selecte the data range:", "Kutools for Excel", xTxt, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    If xRg.Columns.Count > 1 Then
        MsgBox "the selected range is more than one column", vbInformation, "Kutools for Ecel"
        Exit Sub
    End If
    Set xSaveToRg = Application.InputBox("Please selecte output cell:", "Kutools for Excel", , , , , , 8)
    If xSaveToRg Is Nothing Then Exit Sub
    Set xSaveToRg = xSaveToRg.Cells(1)
    Application.ScreenUpdating = False
    For Each xCell In xRg
        If xCell <> "" Then
            xTStr = xTStr & xCell & " "
        Else
            xSaveToRg.Value = xTStr
            Set xSaveToRg = xSaveToRg.Offset(1)
            xTStr = ""
        End If
    Next
    If xTStr <> "" Then xSaveToRg.Value = Left(xTStr, Len(xTStr) - 1)
    Application.ScreenUpdating = True
End Sub

3. Sau đó nhấn F5 để chạy mã này và một hộp nhắc xuất hiện để nhắc bạn chọn dải dữ liệu mà bạn muốn nối, xem ảnh chụp màn hình:

doc nối cho đến khi trống 10

4. Sau đó nhấn vào OKvà một hộp nhắc khác hiện ra, vui lòng chọn một ô để xuất kết quả nối, xem ảnh chụp màn hình:

doc nối cho đến khi trống 11

5. Và sau đó nhấp vào OK và dữ liệu danh sách cột được nối giữa các ô trống, xem ảnh chụp màn hình:

doc nối cho đến khi trống 1


mũi tên màu xanh bong bóng bên phải Nối các giá trị ô cho đến khi tìm thấy ô trống trong một cột bằng Kutools cho Excel

Nếu bạn có Kutools cho Excel, kết hợp nó Phạm vi chuyển đổiKết hợp , bạn cũng có thể hoàn thành công việc này càng sớm càng tốt. Các Phạm vi chuyển đổi tiện ích có thể giúp bạn chuyển đổi cột đơn thành một dải ô và Kết hợp tính năng này có thể giúp bạn nối phạm vi đã chuyển đổi thành một cột.

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 trong 30 ngày. 

Sau khi cài đặt Kutools cho Excel, vui lòng làm như sau:

1. Chọn các ô mà bạn muốn nối và nhấp vào Kutools > Phạm vi > Phạm vi chuyển đổi, xem ảnh chụp màn hình:

2. Trong Phạm vi chuyển đổi hộp thoại, kiểm tra Một cột thành dải ô tùy chọn theo Biến đổi kiểu, Và sau đó chọn Ô trống phân tách các bản ghi theo Hàng trên mỗi bản ghi, xem ảnh chụp màn hình:

doc nối cho đến khi trống 3

3. Sau đó nhấn vào Okvà một hộp nhắc sẽ bật ra để nhắc bạn chọn một ô để xuất kết quả, xem ảnh chụp màn hình:

doc nối cho đến khi trống 4

4. Nhấp chuột OKvà dữ liệu cột đơn đã được chuyển đổi thành nhiều hàng và cột bởi ô trống, hãy xem ảnh chụp màn hình:

doc nối cho đến khi trống 5

5. Dữ liệu được chuyển đổi nằm trong nhiều cột, vì vậy bạn cần kết hợp chúng thành một cột, vui lòng chọn phạm vi dữ liệu và nhấp vào Kutools > Hợp nhất & Tách > Kết hợp các hàng, cột hoặc ô mà không làm mất dữ liệu, xem ảnh chụp màn hình:

6. Trong Kết hợp các cột hoặc hàng hộp thoại, hãy thực hiện các tùy chọn sau:

(1.) Chọn Kết hợp các cột tùy chọn từ Để kết hợp các ô đã chọn theo các tùy chọn sau;

(2.) Sau đó chỉ định một dấu phân tách mà bạn muốn phân tách các giá trị được nối;

(3.) Chọn cách bạn muốn xử lý với các ô được kết hợp. Bạn có thể giữ hoặc xóa dữ liệu gốc và cũng có thể hợp nhất các ô đã kết hợp. Xem ảnh chụp màn hình:

doc nối cho đến khi trống 7

7. Sau khi hoàn tất cài đặt, hãy nhấp vào Ok or Đăng Nhập , các ô đã được nối thành một cột bằng dấu phân tách cụ thể, xem ảnh chụp màn hình:

doc nối cho đến khi trống 8

Tải xuống và dùng thử miễn phí Kutools cho Excel ngay!

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

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...

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!
Comments (8)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Hi, I am using the VBA code, but instead of putting the data into separate rows, it is putting it all in a single cell. Does anyone have an idea why it is doing this?
This comment was minimized by the moderator on the site
Hi! After changing the values (ex, watermelon instead of apple) why is the formula not working?
This comment was minimized by the moderator on the site
Hello, Cristina

Our article provides VBA code, doesn't provide a formula. If you change the cell content, you must re-run the code again to get the correct result.
Thank you!
This comment was minimized by the moderator on the site
great job bro, Very useful
This comment was minimized by the moderator on the site
Hello,
You are welcome. Glad it helps. Any questions, please feel free to contact us. Have a great day.
Sincerely,
Mandy
This comment was minimized by the moderator on the site
It shows there's a syntax error on line 3 "Dim xRg As Range" when I'm trying to run this module based on method 1, what should I do about it?
This comment was minimized by the moderator on the site
Hello, JJ, The code works well in my worksheet, which Excel version do you use?Or you can insert a screesnhot of your problem here.
This comment was minimized by the moderator on the site
How would you do it if you want to base it off another column? I have similar data, but column B is a number then notes(like your fruit) in column I, I want to combine all notes in column I until there is another cell in Column B that has only number. Sometimes there are letter under B or the cells are blank which is why it needs to combine until a number. Then finally can it output back to where it started the combine? IE all notes for first number are in column j, but if the next number is 5 rows below that is fine, it just goes in column j but same row number as the number is found?
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations