Fungsi InStr

Berlaku Untuk
Access untuk Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Mengembalikan Varian (Long) yang menentukan posisi kejadian pertama satu string dalam string lainnya.

Lihat beberapa contoh

Sintaks

InStr([start, ] string1, string2 [, bandingkan ] )

Sintaks fungsi InStr memiliki argumen berikut:

Argumen Deskripsi
mulai Opsional. Ekpresi numerik yang mengatur posisi awal untuk setiap pencarian. Jika dihilangkan, pencarian dimulai pada posisi karakter pertama. Jika start berisi Null, kesalahan akan terjadi. Argumen mulai diperlukan jika bandingkan ditentukan.
string1 Diperlukan. Ekspresi string sedang dicari.
string2 Diperlukan. Ekspresi string dicari.
bandingkan Opsional. Menentukan jenis perbandingan string. Jika bandingkan adalah Null, kesalahan terjadi. Jika perbandingan dikosongkan, pengaturan OptionCompare menentukan tipe perbandingan. Tentukan LCID (LocaleID) yang valid untuk menggunakan aturan khusus lokal dalam perbandingan.

Tips

Penyusun Ekspresi memiliki IntelliSense, sehingga Anda dapat melihat argumen apa yang dibutuhkan ekspresi Anda.

Pengaturan

Pengaturan argumen perbandingan adalah:

Konstanta Value Deskripsi
vbUseCompareOption -1 Melakukan perbandingan menggunakan pengaturan pernyataan Option Bandingkan .
vbBinaryCompare 0 Melakukan perbandingan biner.
vbTextCompare 1 Melakukan perbandingan tekstual.

Mengembalikan nilai

Jika Pengembalian InStr
String1 adalah panjang nol 0
string1 adalah Null Null
string2 adalah panjang nol Mulai
string2 adalah Null Null
string2 tidak ditemukan 0
String2 ditemukan dalam string1 Posisi di mana kecocokan ditemukan
mulai > string2 0

Keterangan

Fungsi InStrB digunakan dengan data byte yang terkandung dalam string. Alih-alih mengembalikan posisi karakter dari kemunculan pertama satu string dalam string lain, InStrB mengembalikan posisi byte.

Contoh

Menggunakan fungsi InStr dalam ekspresi Anda dapat menggunakan InStr di mana pun Anda dapat menggunakan ekspresi. Misalnya, jika Anda ingin mencari posisi periode pertama (.) dalam bidang yang berisi alamat IP (bernama IPAddress), Anda dapat menggunakan InStr untuk menemukannya, seperti ini:

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

Fungsi InStr memeriksa setiap nilai dalam bidang IPAddress dan mengembalikan posisi periode pertama. Oleh karena itu, jika bagian pertama dari alamat IP adalah 10., fungsi mengembalikan nilai 3.

Anda kemudian dapat menggunakan fungsi lain, yang beroperasi pada output fungsi InStr , untuk mengekstrak bagian alamat IP yang mendahului periode pertama, seperti ini:

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

Dalam contoh ini, InStr(1,[IPAddress],".") Mengembalikan posisi periode pertama. Mengurangi 1 menentukan berapa banyak karakter yang mendahului periode pertama, dalam hal ini, 2. Fungsi Left kemudian mengekstrak karakter sebanyak itu dari bagian kiri bidang IPAddress, mengembalikan nilai 10.

Menggunakan InStr dalam kode VBA 

Catatan

Contoh yang mengikuti demonstrasi penggunaan fungsi ini dalam modul Visual Basic for Applications (VBA).

Contoh ini menggunakan fungsi InStr untuk mengembalikan posisi kemunculan pertama satu string dalam string lain.


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.

Lihat Juga

Fungsi string dan cara menggunakannya