Hàm InStr

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ố sau đây:

Đối số

Mô tả

bắt đầu

Tùy chọn. Biểu thức số đặt vị trí bắt đầu cho từng tìm kiếm. Nếu bị bỏ qua, tìm kiếm sẽ bắt đầu từ vị trí ký tự đầu tiên. Nếu bắt đầu chứa null, lỗi xảy ra. Bắt buộc phải có đối số bắt_đầu nếu so_sánh được xác định.

chuỗi_1

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

chuỗi_2

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

so_sánh

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

Mẹo: Trong Access 2010, bộ dựng biểu thức có thông minh, vì vậy bạn có thể thấy các đối số của biểu thức yêu cầu của bạn. 

Cài đặt

Các thiết đặt so sánh đối số là:

Hằng số

Giá trị

Mô tả

Tùy chọn vbUseCompareOption

-1

Thực hiện một so sánh bằng cách sử dụng các thiết đặt của tuyên bố so sánh tùy chọn .

vbBinaryCompare

0

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

so sánh vbtext

1

Thực hiện so sánh văn bản.

vbDatabaseCompare

2

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


Giá trị trả về

If

Hàm InStr trả về

string1 có độ dài bằng không

0

string1 là NULL

Null

string2 có độ dài bằng không

bắt đầu

string2 là NULL

Null

không tìm thấy string2

0

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

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

bắt đầu > string2

0


Chú thích

Hàm Instrb được dùng với dữ liệu byte chứa trong một chuỗi. Thay vì trả về vị trí ký tự của lần xuất hiện đầu tiên của một chuỗi trong một chuỗi, hàm 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 cứ khi nào bạn có thể sử dụng biểu thức. Ví dụ, nếu bạn muốn tìm vị trí của giai đoạn thứ nhất (.) trong một trường có chứa địa chỉ IP (có tên là IPAddress), bạn có thể sử dụng Instr để tìm nó như vậy:

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

Hàm Instr sẽ kiểm tra từng 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 là 10., hàm trả về giá trị 3.

Sau đó, bạn có thể sử dụng các hàm khác, hoạt động trên đầu ra của hàm Instr để trích xuất phần địa chỉ IP trước giai đoạn đầu tiên, như vậy:

Trái ([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. Trừ đi 1 xác định có bao nhiêu ký tự đứng trước giai đoạn đầu tiên, trong trường hợp này, 2. Hàm left sau đó là các chiết xuất có nhiều ký tự từ phần bên trái của trường ipaddress, trả về giá trị 10.

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 sử 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 một chuỗi 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.

Lưu ý:  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. Cho chúng tôi biết thông tin này có hữu ích hay không? Dưới đây là bài viết bằng tiếng Anh để bạn tham khảo..​

Xem Thêm

Hàm chuỗi và cách sử dụng

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.

×