VBA Tìm và Thay thế | Làm thế nào để Tìm & Thay thế Từ trong Excel VBA?
Chức năng Tìm & Thay thế trong VBA
Nếu công việc excel của bạn liên quan đến các nhiệm vụ thông thường tìm kiếm thứ gì đó và thay thế bằng thứ gì đó thì bạn cần bài viết này bằng mọi giá. Bởi vì sau khi đọc bài viết này, bạn có thể sẽ tiết kiệm được 80% thời gian của mình bằng cách học kỹ thuật viết mã VBA này. Tìm và Thay thế trong excel là công cụ thường được sử dụng và chúng ta cũng có thể thực hiện tương tự với VBA. Trong bài viết trước đây của chúng tôi “Tìm VBA”, chúng tôi đã chỉ cho bạn cách sử dụng phương thức FIND trong VBA. Trong bài viết này, chúng tôi sẽ hướng dẫn bạn cách sử dụng phương pháp VBA “Find & Replace”.
Hãy theo dõi bài viết để tìm hiểu kỹ thuật này.
Cú pháp tìm và thay thế VBA
Để sử dụng phương pháp Tìm và Thay thế trong VBA, chúng ta phải làm theo các bước dưới đây. Đầu tiên, chúng tôi đã chọn phạm vi ô, vì vậy hãy đề cập đến phạm vi ô bằng cách sử dụng đối tượng RANGE trong VBA.
Bây giờ hãy đặt một dấu chấm (.) Để xem danh sách IntelliSense.
Chọn phương pháp Thay thế từ danh sách.
Chúng ta có thể thấy danh sách tham số khổng lồ của phương thức Replace. Bây giờ chúng ta sẽ xem giải thích từng tham số bên dưới.
- Cái gì: Đây không là gì ngoài những gì chúng ta cần tìm để thay thế giá trị.
- Thay thế: Với giá trị tìm được, giá trị mới sẽ được thay thế bằng giá trị nào.
- Nhìn vào: Điều này đề cập đến việc chúng ta muốn xem toàn bộ nội dung hay chỉ một phần của nội dung. Chúng tôi có thể cung cấp hai tham số ở đây “xlWhole” & “xlPart”.
- Thứ tự tìm kiếm: Đây là đề cập đến thứ tự tìm kiếm hàng hoặc cột. Chúng tôi có thể cung cấp hai tham số ở đây “xlByRows” & “xlByColumns”.
- Khớp chữ hoa chữ thường: Nội dung chúng tôi đang tìm kiếm có phân biệt chữ hoa chữ thường hay không. Nếu đối số phân biệt chữ hoa chữ thường là TRUE hoặc nếu không thì FALSE.
- Định dạng Tìm kiếm: Chúng tôi cũng có thể tìm kiếm nội dung theo định dạng của giá trị chúng tôi đang tìm kiếm.
- Thay thế Định dạng: Chúng tôi cũng có thể thay thế một định dạng này bằng một định dạng khác.
Ví dụ về VBA Tìm và Thay thế trong Excel
Dưới đây là một số ví dụ về phương pháp Tìm và Thay thế trong Excel VBA.
Bạn có thể tải xuống Mẫu VBA Tìm và Thay thế Excel này tại đây - Mẫu VBA Tìm và Thay thế ExcelVí dụ # 1 - VBA Tìm và Thay thế Từ
Ok, hãy xem ví dụ sau để hiểu Phương pháp Tìm và Thay thế VBA. Hãy xem dữ liệu sau đây.
Bước 1: Đầu tiên hãy đề cập đến Phạm vi ô mà chúng ta đang thay thế. Trong ví dụ này, Phạm vi là từ A1 đến B15, vì vậy mã sẽ là Phạm vi (“A1: B15”).
Mã:
Sub Replace_Example1 () Range ("A1: B15") End Sub
Bước 2: Bây giờ hãy đặt một dấu chấm để xem danh sách IntelliSense.
Bước 3: Chọn phương pháp Thay thế từ danh sách IntelliSense.
Bước 4: Đề cập đến tham số nào là “Tháng 9”.
Mã:
Phạm vi ("A1: B15"). Thay thế Cái gì: = "Tháng 9"
Bước 5: Tiếp theo Thay thế bằng tham số sẽ là giá trị mới mà chúng ta thay thế bằng “Tháng 12”.
Mã:
Phạm vi ("A1: D4"). Thay thế Cái gì: = "Tháng 9", Thay thế: = "Tháng 12"
Ok, bây giờ bỏ qua tất cả các tham số khác. Bây giờ hãy chạy mã VBA để xem phương pháp thay thế bằng VBA.
Vì vậy, nó đã thay thế tất cả tháng 9 bằng từ "tháng 12".
Ví dụ # 2 - Thay thế Phân biệt chữ hoa chữ thường
Ví dụ nâng cao hơn về phương pháp VBA Find & Replace sẽ sử dụng phương pháp thay thế phân biệt chữ hoa chữ thường. Đối với ví dụ này, tôi đã tạo dữ liệu mẫu này như thể hiện trong hình ảnh bên dưới.
Chúng tôi có hai dữ liệu ô được viết hoa “HELLO”. Bất cứ khi nào chúng ta có viết hoa “HELLO” thì nó nên được thay thế bằng từ mới “Hiii”.
Như thường lệ, hãy viết mã, đề cập đến những gì cần tìm và những gì cần thay thế trước.
Mã:
Sub Replace_Example2 () Range ("A1: D4"). Replace What: = "HELLO", Replacement: = "Hiii" End Sub
Bây giờ đối với đối số tiếp theo “Match Case”, hãy viết điều kiện là TRUE.
Mã:
Range ("A1: D4"). Replace What: = "HELLO", Replacement: = "Hiii", MatchCase: = True
Bây giờ chạy mã, nó sẽ chỉ thay thế chữ viết hoa “HELLO” thành “Hiii”.
Hãy tưởng tượng bạn chưa áp dụng đối số Match Case trong VBA thì nó sẽ thay thế tất cả các từ “Hello” thành “Hiii”.
Lưu ý: Tôi đã xóa đối số Match Case ở đây, theo mặc định, giá trị đối số MATCH CASE là FALSE.
Như chúng ta thấy trong hình trên, nó đã thay thế tất cả các từ “xin chào” thành “hiii”.
Vì vậy, bất cứ khi nào chúng ta muốn sử dụng tiêu chí MATCH CASE, chúng ta nên áp dụng đối số là “TRUE” và theo mặc định, giá trị đối số này là “FALSE”. Như vậy, chúng ta có thể sử dụng phương thức “FIND & REPLACE” để tìm một thứ gì đó và thay thế giá trị tìm được bằng một thứ khác.