Cách sử dụng Regular Expression trong VBA

Chia sẻ bài viết này:
  • 2
  •  
  •  
  •  
  •  
  •  
  •   
  •   

1. Khái niệm về Regular Expression

Đây là một thuật ngữ thường dùng trong lập trình, giúp tìm ra những dữ liệu được sắp xếp theo 1 quy luật nhất định trong 1 chuỗi văn bản.

Ví dụ:

Những con số nằm trong 1 đoạn text: Số điện thoại, số nhà

Thông tin Email nằm trong 1 đoạn text

Khi sử dụng Regular Expression sẽ giúp chúng ta dễ dàng tách được những dữ liệu có tính quy luật ra khỏi 1 đoạn text => Được ứng dụng nhiều trong việc xử lý dữ liệu, trích lọc dữ liệu, đặc biệt trong những bảng dữ liệu lớn, phức tạp mà hầu hết đều phải làm bằng tay nếu không sử dụng VBA trong excel.

2. Cách sử dụng Regular Expression

Chúng ta cùng tìm hiểu về cách sử dụng chức năng này thông qua ví dụ sau:

Cho đoạn text tại ô A6 như sau:

 

Trích lọc những nội dung thỏa mãn điều kiện:

1 ký tự bất kỳA, B, C, D… kết hợp với đoạn text “-hoc excel online”

Ví dụ:

A-hoc excel online

B-hoc excel online

Bằng việc thấu hiểu rằng hầu hết nhân viên văn phòng thường mất nhiều thời gian tra cứu cách sử dụng các hàm, các tính năng trong Excel, gặp khó khăn trong lồng ghép hàm, xử lý dữ liệu, công việc bận rộn không có thời gian học. Nên Học Excel Online đã thiết kế ra chương trình Excel từ cơ bản tới nâng cao dành cho người đi làm. Đây là chương trình học online, học viên có thể chủ động học mọi lúc mọi nơi, trao đổi trực tiếp với giảng viên tại bài giảng trong suốt quá trình học.

Với khoá học này học viên sẽ nắm được: :

  • Trọn bộ công cụ định dạng báo cáo chuyên nghiệp: Format, Cell, Number, Style,...không mất thời gian cả ngày ngồi sửa báo cáo
  • Toàn bộ kỹ năng lọc dữ liệu, lọc dữ liệu nâng cao trong Excel phục vụ cho mục đích trích xuất dữ liệu
  • Data Validation kiểm soát dữ liệu khi nhập vào một vùng trong bảng tính
  • TẤT TẦN TẬT hơn 100 hàm thông dụng, công thức mảng trong Excel, học tới đâu nhớ tới đó
  • Bộ 36 PHÍM TẮT giúp thao tác nhanh gấp đôi
  • BÁO CÁO SIÊU TỐC trong 1 phút với Pivot Table
  • Hỏi đáp trực tiếp tại bài giảng với giảng viên trong suốt quá trình học
  • CHUYÊN NGHIỆP trong báo cáo bằng Biểu đồ, đồ thị,....
  • 142+ bài giảng, 13+ giờ học, 200+ ví dụ thực tế cùng chuyên gia
  • 100+ Kỹ năng, thủ thuật Excel thông dụng với các hàm: SUMIF, HLOOKUP, VLOOKUP, DATEDIF…

Bước 1: Mở cửa sổ Visual Basic Application (VBA)

Có 2 cách để mở cửa sổ VBA:

  • Cách 1: Bấm tổ hợp phím tắt Alt + F11
  • Cách 2: Trong tab Developer, bấm chọn Visual Basic

Bước 2: Tạo mới 1 Module

Bấm chuột phải vào mục Project – VBAProject rồi chọn Insert / Module

Bước 3: Mở cửa sổ Locals trong VBA để giúp việc  hiểu về cách sử dụng Regular Expression dễ hơn

Trong tab View  > Chọn mục Locals Window

Bước 4: Tạo 1 sub Test và thực hiện như sau

* Lưu ý:

Nếu chuỗi strPattern có sử dụng tiếng việt có dấu thì chúng ta có thể đặt chuỗi đó vào 1 vị trí xác định trong file excel rồi tham chiếu tới vị trí đó (vì trong VBA không viết trực tiếp được tiếng việt có dấu nên có thể sử dụng gián tiếp)

strPattern = “[ABCD]-” & sheet1.Cells(7,1).value

* Kiểm tra kết quả:

Đặt Break Point tại End Sub rồi thực  hiện Run Macro này. Kết quả thu được tại mục Local như sau:

Như vậy 3 kết quả của matches đã đúng như chúng ta mong muốn.

Với việc sử dụng chức năng Regular Expression chúng ta có thể thực hiện việc trích lọc dữ liệu theo quy luật trong 1 chuỗi lớn dễ dàng hơn nhiều rồi phải không nào.

* Video hướng dẫn:

Ngoài ra bạn có thể xem thêm video hướng dẫn để hiểu rõ hơn cách làm nhé:

Chúc các bạn học tốt cùng Học Excel Online!

 

 

 


Chia sẻ bài viết này:
  • 2
  •  
  •  
  •  
  •  
  •  
  •   
  •