Hàm InStr

Lưu ý: Chúng tôi muốn cung cấp cho bạn nội dung trợ giúp mới nhất ở chính ngôn ngữ của bạn, nhanh nhất có thể. Trang này được dịch tự động nên có thể chứa các lỗi về ngữ pháp hoặc nội dung không chính xác. Mục đích của chúng tôi là khiến nội dung này trở nên hữu ích với bạn. Vui lòng cho chúng tôi biết ở cuối trang này rằng thông tin có hữu ích với bạn không? Dưới đây là bài viết bằng Tiếng Anh để bạn tham khảo dễ hơn.

Trả về một Biến_thể (Dài) xác định vị trí của một chuỗi xuất hiện lần đầu tiên trong một chuỗi khác.

Xem một số ví dụ

Cú pháp

InStr ([bắt đầu, ] string1, string2 [so sánh ] )

Cú pháp hàm InStr có các đối số:

Đối số

Mô tả

bắt đầu

Tùy chọn. Biểu thức số đặt vị trí bắt đầu cho mỗi tìm kiếm. Nếu bỏ qua, tìm kiếm bắt đầu tại vị trí của ký tự đầu tiên. Nếu khởi động chứa giá trị Null, lỗi sẽ xuất hiện. Bắt đầu đối số là cần thiết khi so sánh được chỉ định.

string1

Bắt buộc. Biểu thức chuỗi được tìm kiếm.

string2

Bắt buộc. Biểu thức chuỗi tìm kiếm.

so sánh

Tùy chọn. Xác định loại so sánh chuỗi. Nếu so sánh là Null, xuất hiện lỗi. Nếu so sánh được bỏ qua, thiết đặt tùy chọnso sánh xác định loại so sánh. Xác định một LCID hợp lệ (LocaleID) sử dụng quy tắc bản địa cụ thể trong so sánh.

Mẹo: Trong Access 2010, bộ dựng biểu thức có IntelliSense, để bạn có thể thấy những gì đối số biểu thức của bạn yêu cầu.

Thiết đặt

Thiết đặt so sánh đối số là:

Hằng số

Giá trị

Mô tả

vbUseCompareOption

-1

Thực hiện một so sánh sử dụng thiết đặt của câu lệnh Tùy chọn so sánh .

vbBinaryCompare

0

Thực hiện một so sánh nhị phân.

vbTextCompare

1

Thực hiện một so sánh chứa văn bản.

vbDatabaseCompare

2

Microsoft Office Access 2007 chỉ. Thực hiện một so sánh dựa trên thông tin trong cơ sở dữ liệu của bạn.


Trả về giá trị

If

InStr trả về

string1 có độ dài không

0

string1 là Null

Null

string2 có độ dài không

bắt đầu

string2 là Null

Null

string2 không tìm thấy

0

string2 được tìm thấy trong string1

Vị trí mà khớp được tìm thấy

bắt đầu > string2

0


Chú thích

Hàm InStrB được sử dụng với dữ liệu byte chứa trong một chuỗi. Thay vì trả về vị trí của ký tự của lần xuất hiện đầu tiên của một chuỗi trong khác, InStrB trả về vị trí byte.

Ví dụ

Sử dụng hàm InStr trong một biểu thức    Bạn có thể sử dụng InStr bất kỳ lúc nào bạn có thể dùng biểu thức. Ví dụ, nếu bạn muốn tìm vị trí của chu kỳ đầu tiên (.) trong một trường có chứa địa chỉ IP (có tên IPAddress), bạn có thể dùng InStr để tìm thấy nó, giống như:

InStr(1,[IPAddress],".")

Hàm InStr kiểm tra mỗi giá trị trong trường IPAddress và trả về vị trí của giai đoạn đầu tiên. Do đó, nếu phần đầu tiên của địa chỉ IP 10., thì hàm trả về giá trị 3.

Bạn có thể dùng các hàm khác, điều hành trên đầu ra của hàm InStr , để trích xuất phần của địa chỉ IP đứng đầu tiên giai đoạn, như vậy:

Left([ipaddress],(Instr(1,[ipaddress],".") -1))

Trong ví dụ này, InStr(1,[IPAddress],".") trả về vị trí của giai đoạn đầu tiên. Cách trừ đi 1 xác định số lượng ký tự đặt trước chu kỳ đầu tiên, trong trường hợp này, 2. Hàm bên trái rồi trích nhiều ký tự từ phần trường IPAddress, trả về giá trị 10, bên trái.

Sử dụng InStr trong mã VBA   

Lưu ý: Các ví dụ sau thể hiện cách sử dụng hàm này trong mô-đun Visual Basic for Applications (VBA). Để biết thêm thông tin về cách làm việc với VBA, chọn Tham khảo dành cho Nhà phát triển trong danh sách thả xuống cạnh Tìm kiếm, rồi nhập một hoặc nhiều từ vào hộp tìm kiếm.

Ví dụ này dùng hàm InStr để trả về vị trí của lần xuất hiện đầu tiên của một chuỗi trong khác.

Dim SearchString, SearchChar, MyPos
SearchString ="XXpXXpXXPXXP" ' String to search in.
SearchChar = "P" ' Search for "P".
' A textual comparison starting at position 4. Returns 6.
MyPos = Instr(4, SearchString, SearchChar, 1)
' A binary comparison starting at position 1. Returns 9.
MyPos = Instr(1, SearchString, SearchChar, 0)
' Comparison is binary by default
' (last argument is omitted).
MyPos = Instr(SearchString, SearchChar) ' Returns 9.
MyPos = Instr(1, SearchString, "W") ' Returns 0.
Phát triển kỹ năng Office của bạn
Khám phá nội dung đào tạo
Sở hữu tính năng mới đầu tiên
Tham gia Người dùng nội bộ Office

Thông tin này có hữu ích không?

Cảm ơn phản hồi của bạn!

Cảm ơn bạn đã phản hồi! Để trợ giúp tốt hơn, có lẽ chúng tôi sẽ kết nối bạn với một trong những nhân viên hỗ trợ Office của chúng tôi.

×