Để có thể tự tạo một User Defined Function (tức là hàm tự tạo do người dùng xác định) để giải quyết bài toán dưới đây thì bạn chỉ cần tạo một đoạn VBA, sau đó thêm đoạn này vào ứng dụng Excel là bạn có thể sử dụng hàm tự tạo để nối các ô trong một cột trong Excel rồi.
Hàm nối các ô trong một cột, nối chuỗi trong một cột trong Excel
* Các bước cần chuẩn bị:
- Máy tính cài phiên bản Excel thông dụng hay dùng hiện nay: Excel 2016, Excel 2013.
- Có sẵn một file Excel đã có dữ liệu để chỉ việc dùng hàm nối chuỗi.
Như nội dung phần mở đầu đã nói, nếu tình huống bạn muốn nối các ô trong một cột lại với nhau, ví dụ như từ ô C3 đến C11 của cột C là mã các Mã số lần lượt từ TH001 đến TH009 và bạn cần nối các ô với nhau thành: TH001#TH001#TH002#TH003#TH004#TH005#TH006#TH007#TH008#TH009. Ở đây bạn muốn đặt thêm dấu "#" để ngăn cách khi nối các ô lại với nhau. Vậy với bài toán như thế này thì cách tạo hàm tự tạo sẽ như thế nào?
Bước 1: Tại giao diện cửa sổ Excel -> bạn nhấn và giữ phím Alt + F11 (ở Laptop một số máy sẽ là Alt + Fn + F11)để mở Microsoft Visual Basic lên:
Bước 2: Bạn nhấn chuột phải vào VBAProject như hình dưới -> sau đó chọn Insert -> và chọn Module:
Bạn Copy đoạn code dưới đây -> sau đó Dán (Paste) vào cửa sổ vừa mới xuất hiện:
Function noi(vung As Range, chuoigiua As String)
Dim i, kq
For i = 1 To vung.Rows.Count
If vung(i, 1) <> "" Then
kq = kq & chuoigiua & vung(i, 1)
End If
Next i
noi = kq
End Function
Bước 3: Sau đó bạn lưu (Ctrl + S) và đóng cửa sổ giao diện này. Tiếp theo, bạn quay trở lại với ứng dụng Excel để sử dụng công thức noi để nối các ô trong một cột, nối chuỗi trong 1 cột.
Tại ô kết quả, bạn nhập công thức = noi(C3:C11,"#") -> sau đó nhấn Enter (bạn nhập dấu # là để ngăn cách bằng dấu # hoặc nếu bạn muốn ngăn cách bằng khoảng trắng thì chỗ dấu # bạn thay bằng dấu "cách" là được).
Excel xử lý và trả kết quả nối các ô trong 1 cột thành công như hình dưới:
Như vậy là chúng tôi vừa hướng dẫn bạn một thủ thuật hay để Nối các ô trong 1 cột, nối chuỗi trong 1 cột Excel rất hữu ích nhưng cũng không quá phức tạp để bạn có thể thực hiện được. Việc nối này đơn giản là bạn chỉ cần copy đoạn VBA mà chúng tôi đã tạo sẵn, sau đó add vào Microsoft Visual Basic của Excel là bạn đã có thể dùng được hàm nối các ô trong 1 cột trên Excel rồi.
Ngoài ra, để bạn hiểu thêm về hàm nối chuỗi trong Excel, Taimienphi.vn mời bạn tham khảo bài viết Nối chuỗi trong Excel mà chúng tôi đã từng giới thiệu, chia sẻ để hiểu được rõ hơn. Chúc bạn thành công!
Bên cạnh đó, để nối các chuỗi giữa các cột với nhau, bạn có thể dùng hàm ConcateNate để thực hiện, tham khảo chi tiết cú pháp và cách thực hiện hàm ConcateNate để nối nhiều dữ liệu tại nhiều cột thành một chuỗi.