Bạn đã biết cách để thêm, chèn ký tự vào giữa các chuỗi dữ liệu trong Excel với mã VBA hoặc các công thức kết hợp giữa hàm LEFT, RIGHT, MID và hàm LEN, LEFT, RIGHT. Hãy cùng tìm hiểu nhé!
Xem thêm: Hướng dẫn cách chèn nhiều hàng hoặc cột trong Excel
Giả sử bạn có một danh sách gồm các chuỗi liền mạch, bạn muốn phân tách chúng bằng các dấu gạch ngang, hoặc dấu chấm,... để dễ phân biệt hơn.
Ví dụ: Phân tách số điện thoại 18001234 thành 1800.1234, hoặc phân tách mã khách hàng từ KHCN201234 thành KHCN20-1234, hay biển số xe từ 14B11234 thành 14B1-1234,...
Trong bài viết này, chúng ta sẽ tìm hiểu một số mẹo giúp bạn nhanh chóng chèn các ký tự vào giữa các chuỗi đã có trong bảng tính Excel.
Cách thêm, chèn ký tự vào giữa các chuỗi dữ liệu trong Excel với VBA
Sử dụng VBA, bạn có thể nhanh chóng chèn ký tự bất kỳ vào chuỗi ký tự có sẵn trong Excel ở một vị trí xác định. Như hình minh họa bên dưới.
Bạn có thể áp dụng mã VBA sau để chèn một ký tự cụ thể sau mỗi 4 (hoặc số lượng ký tự bất kỳ)
1 . Nhấn giữ phím ALT + F11 trong Excel để mở cửa sổ Microsoft Visual Basic for Applications.
2 . Bấm Insert > Module và dán đoạn mã bên dưới vào Cửa sổ Module.
Mã VBA chèn ký tự bất kỳ vào một vị trí xác định trong một chuỗi Excel
Sub InsertCharacter() Updateby Extendoffice Dim Rng As Range Dim InputRng As Range, OutRng As Range Dim xRow As Integer Dim xChar As String Dim index As Integer Dim arr As Variant Dim xValue As String Dim outValue As String Dim xNum As Integer xTitleId = “GITIHO for YOU” Set InputRng = Application.Selection Set InputRng = Application.InputBox("Range :", xTitleId, InputRng.Address, Type:=8) xRow = Application.InputBox("Number of characters :", xTitleId, Type:=1) xChar = Application.InputBox("Specify a character :", xTitleId, Type:=2) Set OutRng = Application.InputBox("Out put to (single cell):", xTitleId, Type:=8) Set OutRng = OutRng.Range("A1") xNum = 1 For Each Rng In InputRng xValue = Rng.Value outValue = “” For index = 1 To VBA.Len(xValue) If index Mod xRow = 0 And index <> VBA.Len(xValue) Then outValue = outValue + VBA.Mid(xValue, index, 1) + xChar Else outValue = outValue + VBA.Mid(xValue, index, 1) End If Next OutRng.Cells(xNum, 1).Value = outValue xNum = xNum + 1 Next End SubXem thêm: Hướng dẫn về đối tượng Range trong VBA cơ bản
3. Nhấn phím F5 hoặc nút Run để chạy đoạn mã này, một hộp nhắc sẽ bật ra để nhắc bạn chọn phạm vi dữ liệu mà bạn muốn chèn ký tự nhất định vào chuỗi văn bản.
4. Bấm OK và sau đó nhập số để xác định vị trí bạn muốn chèn thêm ký tự, trong ví dụ này, chúng ta sẽ chèn ký tự "-" vào giữa để phân tách từng nhóm 4 ký tự một.
5. Tiếp đến, hãy nhập ký tự bạn muốn chèn vào chuỗi. Sau đó bấm OK.
6. Chọn nơi bạn muốn xuất kết quả. Lưu ý, bạn chỉ cần chọn 1 ô duy nhất. Cuối cùng, nhấp vào OK và bạn đã chèn thành công ký tự đặt biệt vào giữa một chuỗi ký tự trong Excel.
Nếu như đây là lần đầu bạn biết tới VBA, và thấy được sự kỳ diệu của nó khi chèn ký tự vào giữa các chuỗi tự động thì đây mới chỉ là một phần nhỏ thôi. VBA còn nhiều tính năng hữu ích không ngờ mà nếu bạn biết thì không khỏi thốt lên “Giá mà mình học VBA sớm hơn”.
Cùng học thử và khám phá các khóa học về VBA của Gitiho để trải nghiệm nhé:
Cách thêm, chèn ký tự vào giữa các chuỗi dữ liệu trong Excel bằng công thức
Mặc dù đoạn mã VBA trên giúp bạn nhanh chóng thêm ký tự vào vị trí bất kỳ trong một chuỗi trên Excel, nhưng nếu bạn chưa quen thuộc với công cụ này, bạn cũng có thể chèn ký ký tự vào giữa dãy số, chuỗi trong Excel với cách công thức bên dưới.
Sử dụng công thức LEN, LEFT, RIGHT
- LEN: Tính tổng các ký tự trong dãy số.
- LEFT: Tách ký tự trong dãy số bắt đầu từ phía bên trái.
- RIGHT: Tách ký tự trong dãy số bắt đầu từ phía bên phải.
Giải sử bạn có mội danh sách các biển số xe, bạn cần chèn thêm dấu - để giúp nhận biết dể dàng hơn. Bạn có thể sử dụng công thức
= LEFT(A2,4) & " - " & RIGHT(A2, LEN(A2) - 4)
như hình bên dưới
Trong đó:
- LEFT(A2,4): Tách 4 ký tự tính từ bên trái của ô A2)
- " - ": là ký tự mà chúng ta muốn chèn vào chuỗi.
- LEN(A2): Đếm số ký tự có trong ô A2
- RIGHT(A2, LEN(A2)-4): Tách số ký tự tính từ bên phải sau khi trừ đi 4 (tức trừ đi 4 ký tự mà hàm LEFT đã lấy).
- &: Dùng để nối dãy số.
Sau đó, bạn có thể kéo công thức xuống các ô bên dưới.
Mọi người cùng xem: 3 cách chuyển chữ thường thành chữ hoa trong Excel và ngược lại
Sử dụng công thức LEFT, RIGHT, MID
Trong ví dụ này, thay vì sử dụng hàm LEN để đếm ký tự như phần trên, chúng ta sẽ dùng hàm MID. Hàm MID dược sử dụng để bắt một chuỗi ký tự nằm bên trong một chuỗi ký tự dài hơn.
Giả sử chúng ta có một cột bao gồm nhiều số điện thoại, bạn sẽ phân tách số điện thoại đó bằng dấu ".", đồng thời thêm số 0 trước dải số để để nhận diện hơn. Bạn có thể sử dụng công thức như trong hình ảnh dưới đây:
= 0 & LEFT(A2,3) & "." & MID(A2,4,3) & "." & RIGHT(A2,3)
Trong công thức này có các thành phần là:
- 0 là ký tự chúng ta thêm vào đầu chuỗi số
- LEFT(A2,3) lấy từ bên phải qua 3 ký tự
- & "." chèn dấu "."
- MID (A2,4,3) lấy chuỗi nằm giữa, bỏ 4 ký tự bên phải và 3 ký tự bên trái
- RIGHT(A2,3) lấy từ bên trái qua 3 ký tự.
Sau đó, bạn có thể kéo công thức xuống các ô bên dưới là hoàn thành xong thao tác thêm, chèn ký tự vào giữa các chuỗi dữ liệu trong Excel.
Xem thêm: Hướng dẫn cách gọi Sub trong VBA qua các ví dụ
Kết luận
Hy vọng qua bài viết này, bạn đã biết cách chèn ký tự vào giữa các chuỗi dữ liệu trong Excel bằng mã VBA và các công thức thú vị khác. Để 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 theo dõi Gitiho thường xuyên các bạn nhé.
Nếu bạn muốn được học kiến thức VBA một cách đầy đủ hơn theo lộ trình từ cơ bản đến nâng cao thì hãy tham gia vào khóa học Tuyệt đỉnh VBA của Gitiho:
Tuyệt đỉnh VBA: Viết code trong tầm tay
Tuyệt đỉnh VBA là khóa học được thu hút được gần 12000 học viên tại Gitiho. Khóa học mang đến cho bạn những bài giảng chi tiết, ví dụ thực tế đồng thời tặng kèm các tài liệu cực hay giúp bạn làm việc với VBA hiệu quả hơn.
Hoàn thành khóa học, bạn sẽ có tư duy lập trình cơ bản, biết viết code, hiểu code và sửa code, thay đổi menu excel, tạo form nhập liệu theo ý muốn, nắm rõ cách viết mã lệnh Macro để tự động phân tích, nhập và xử lý số liệu,... cùng nhiều kỹ năng lập trình khác. Sau khi thành thạo VBA qua khóa học, bạn có thể ứng dụng kiến thức đã học để tự động hóa các thao tác, nghiệp vụ trên Excel.
Khi học tập tren Gitiho, bạn không bị giới hạn thời gian hay số lần học. Bạn có thể thoải mái sắp xếp lịch học phù hợp với bản thân. Các bạn còn được giảng viên hỗ trợ tận tình, giải đáp mọi thắc mắc trong vòng 24h. Chúc các bạn học tập hiệu quả!