Thủ Thuật
  • TOP Thủ Thuật
    • Thủ Thuật Internet
    • Thủ Thuật Máy Tính
    • Thủ Thuật Tiện Ích
    • Thủ Thuật Phần Mềm
  • Chia Sẻ Kiến Thức
    • Học Excel
    • Học Word
    • Học Power Point
  • Games
  • Kênh Công Nghệ
  • Facebook
  • WordPress
  • SEO
No Result
View All Result
Thủ Thuật
  • TOP Thủ Thuật
    • Thủ Thuật Internet
    • Thủ Thuật Máy Tính
    • Thủ Thuật Tiện Ích
    • Thủ Thuật Phần Mềm
  • Chia Sẻ Kiến Thức
    • Học Excel
    • Học Word
    • Học Power Point
  • Games
  • Kênh Công Nghệ
  • Facebook
  • WordPress
  • SEO
No Result
View All Result
Thủ Thuật
No Result
View All Result
Home Chia Sẻ Kiến Thức Học Excel

Hàm InStr trong VBA và Cách Trích Xuất Chuỗi Hiệu Quả Hơn

Hàm InStr trong VBA và Cách Trích Xuất Chuỗi Hiệu Quả Hơn
6k
SHARES
19.5k
VIEWS
Share on Facebook

Nội Dung Bài Viết

Toggle
  • Khi nào nên sử dụng InStr, Left, Right và Mid?
  • Xử lý chuỗi có độ dài thay đổi với hàm Split
  • Ví dụ ứng dụng hàm Split
  • Kết luận

Hàm InStr là một trong những hàm phổ biến nhất trong Excel VBA, dùng để tìm kiếm một chuỗi con trong chuỗi. Tuy nhiên, có những phương pháp hiệu quả hơn để trích xuất chuỗi mà không cần dùng đến InStr. Bài viết này sẽ hướng dẫn bạn cách sử dụng InStr trong VBA và giới thiệu các phương pháp thay thế tối ưu hơn.

Minh họa hàm InStrMinh họa hàm InStr

Khi nào nên sử dụng InStr, Left, Right và Mid?

Hàm InStr hữu ích khi bạn muốn kiểm tra sự tồn tại của một chuỗi con trong chuỗi. Left, Right và Mid phù hợp cho việc trích xuất đơn giản khi chuỗi con có kích thước và vị trí cố định.

Kiểm tra chuỗi con bằng InStr:

Ví dụ, để kiểm tra xem tên “John Henry Smith” có chứa “Henry” hay không:

Sub CheckName()
    Dim strName As String
    strName = "John Henry Smith"

    If InStr(1, strName, "Henry") > 0 Then
        Debug.Print "Tên chứa 'Henry'"
    Else
        Debug.Print "Tên không chứa 'Henry'"
    End If
End Sub

Nếu InStr trả về giá trị lớn hơn 0, chuỗi chứa chuỗi con cần tìm.

Trích xuất chuỗi bằng Left, Right và Mid:

Sub ExtractString()
    Dim strText As String
    strText = "1234ABC567"

    Debug.Print Left(strText, 4)    ' Kết quả: 1234
    Debug.Print Right(strText, 3)   ' Kết quả: 567
    Debug.Print Mid(strText, 5, 3)  ' Kết quả: ABC
End Sub

Ba hàm này hoạt động tốt khi văn bản cần trích xuất có kích thước và vị trí cố định. Trong các trường hợp khác, việc sử dụng InStr để xác định vị trí trở nên phức tạp.

Xem thêm:  Toán tử So sánh trong Excel: Hướng dẫn Chi Tiết Cho Người Dùng Việt Nam

Minh họa Left, Right, MidMinh họa Left, Right, Mid

Xử lý chuỗi có độ dài thay đổi với hàm Split

Hàm Split là giải pháp hiệu quả cho việc trích xuất chuỗi có độ dài thay đổi. Hàm này chia chuỗi thành một mảng dựa trên ký tự phân cách, giúp truy cập từng phần tử dễ dàng.

Ví dụ, trích xuất tên từ chuỗi “John Henry Smith”:

Sub ExtractName()
    Dim strName As String
    Dim arrName As Variant

    strName = "John Henry Smith"
    arrName = Split(strName, " ")

    Debug.Print arrName(0)  ' Kết quả: John
    Debug.Print arrName(1)  ' Kết quả: Henry
    Debug.Print arrName(2)  ' Kết quả: Smith
End Sub

Split chia chuỗi tại mỗi khoảng trắng và lưu trữ các phần tử vào mảng arrName. Bạn có thể truy cập từng phần tử bằng chỉ số của nó (bắt đầu từ 0).

Minh họa hàm SplitMinh họa hàm Split

Ví dụ ứng dụng hàm Split

1. Trích xuất số từ tên tệp:

Sub ExtractFileNumber()
    Dim strFileName As String
    Dim arrFileName As Variant

    strFileName = "VB_23476_Val.xls"
    arrFileName = Split(strFileName, "_")

    Debug.Print arrFileName(1)  ' Kết quả: 23476
End Sub

2. Kiểm tra địa chỉ IP:

Sub ValidateIP()
    Dim strIP As String
    Dim arrIP As Variant
    Dim intSecondOctet As Integer

    strIP = "BE-ABCDDD-DDS 172.16.23.3"
    arrIP = Split(strIP, ".")

    intSecondOctet = CInt(arrIP(1))

    If intSecondOctet >= 16 And intSecondOctet <= 31 Then
        Debug.Print "Địa chỉ IP hợp lệ"
    Else
        Debug.Print "Địa chỉ IP không hợp lệ"
    End If
End Sub

Kết luận

InStr và InStrRev phù hợp cho việc kiểm tra sự tồn tại của chuỗi con. Left, Right và Mid hữu ích khi vị trí và kích thước chuỗi con cố định. Tuy nhiên, hàm Split là lựa chọn tối ưu cho việc trích xuất chuỗi có độ dài thay đổi, giúp mã gọn gàng và dễ hiểu hơn. Bên cạnh đó, việc sử dụng toán tử Like (khớp mẫu) cũng mang lại giải pháp đơn giản hơn cho việc kiểm tra định dạng chuỗi.

Xem thêm:  Cách Tính Tổng Danh Sách Đã Lọc trong Excel

Bạn đã nắm được cách sử dụng hàm InStr và các phương pháp trích xuất chuỗi hiệu quả hơn trong VBA. Hãy áp dụng những kiến thức này để tối ưu hóa code của bạn!

Đánh Giá Bài Viết
Tuyết Nhi

Tuyết Nhi

Tôi là Tuyết Nhi - Nữ phóng viên trẻ đến từ Hà Nội. Với niềm đam mê công nghệ, khoa học kỹ thuật, tôi yêu thích và muốn chia sẻ đến mọi người những trải nghiệm, kinh nghiệm về các lĩnh vực công nghệ, kỹ thuật... Rất mong được quý độc giả đón nhận ❤️.

Related Posts

7 Năm Kinh Nghiệm: Xin Việc Công Nghệ Không Khó Như Bạn Nghĩ
Học Excel

7 Năm Kinh Nghiệm: Xin Việc Công Nghệ Không Khó Như Bạn Nghĩ

Đếm Tần Suất Xuất Hiện Giá Trị Tăng Dần trong Excel với Hàm MAP
Học Excel

Đếm Tần Suất Xuất Hiện Giá Trị Tăng Dần trong Excel với Hàm MAP

Tạo Thanh Tìm Kiếm Tùy Chỉnh trong Google Sheets với Hàm Có Sẵn
Học Excel

Tạo Thanh Tìm Kiếm Tùy Chỉnh trong Google Sheets với Hàm Có Sẵn

Trích xuất Thông tin Doanh nghiệp Việt Nam từ Mã số Thuế bằng Google Sheets
Học Excel

Trích xuất Thông tin Doanh nghiệp Việt Nam từ Mã số Thuế bằng Google Sheets

Discussion about this post

Trending.

Tải Hills of Steel MOD APK v8.2.0 (Vô Hạn Tiền, Kim Cương)

Tải Hills of Steel MOD APK v8.2.0 (Vô Hạn Tiền, Kim Cương)

Township MOD APK: Xây Dựng Thành Phố Ước Mơ Của Bạn

Township MOD APK: Xây Dựng Thành Phố Ước Mơ Của Bạn

Tải Minecraft PE Miễn Phí Cho Android và iOS Mới Nhất

Tải Minecraft PE Miễn Phí Cho Android và iOS Mới Nhất

Tối ưu hóa trải nghiệm chơi game với Razer Game Booster

Tối ưu hóa trải nghiệm chơi game với Razer Game Booster

Khám phá Thế Giới Ảo Avatar World: Tải APK MOD Mở Khóa Tất Cả v1.149!

Khám phá Thế Giới Ảo Avatar World: Tải APK MOD Mở Khóa Tất Cả v1.149!

Giới Thiệu

Thủ Thuật

➤ Website đang trong quá trình thử nghiệm AI biên tập, mọi nội dung trên website chúng tôi không chịu trách nhiệm. Bạn hãy cân nhắc thêm khi tham khảo bài viết, xin cảm ơn!

Chuyên Mục

➤ TOP Thủ Thuật

➤ Chia Sẻ Kiến Thức

➤ Kênh Công Nghệ

➤ SEO

➤ Games

Liên Kết

➤ Ketquaxskt.com

➤ TOP Restaurants

➤

➤

➤

Liên Hệ

➤ TP. Hải Phòng, Việt Nam

➤ 0931. 910. JQK

➤ Email: [email protected]

Website này cũng cần quảng cáo, không có tiền thì viết bài làm sao  ” Đen Vâu – MTP ”

DMCA.com Protection Status

© 2025 Thủ Thuật - Website chia sẻ kiến thức công nghệ hàng đầu Việt Nam

No Result
View All Result
  • TOP Thủ Thuật
    • Thủ Thuật Internet
    • Thủ Thuật Máy Tính
    • Thủ Thuật Tiện Ích
    • Thủ Thuật Phần Mềm
  • Chia Sẻ Kiến Thức
    • Học Excel
    • Học Word
    • Học Power Point
  • Games
  • Kênh Công Nghệ
  • Facebook
  • WordPress
  • SEO

© 2025 Thủ Thuật - Website chia sẻ kiến thức công nghệ hàng đầu Việt Nam