2 回答

TA貢獻(xiàn)1893條經(jīng)驗(yàn) 獲得超10個(gè)贊
Instr函數(shù)
一、題目:
要求編寫(xiě)一段代碼,運(yùn)用Instr函數(shù),在一字符串中查找另一字符串并返回結(jié)果。
二、代碼:
Sub 示例_1_18()
Dim bssString, yczChar, wz
bssString ="ABpAApCDPBBP"
yczChar = "P"
MsgBox "bssString = "" ABpAApCDPBBP """ & Chr(10) & _
"yczChar= ""P"" 時(shí): " & Chr(10) & Chr(10) & _
"InStr(4, bssString, yczChar, 1) 返回值為 " & _
InStr(4, bssString, yczChar, 1)
wz = Instr(1, bssString, yczChar, 0)
wz = Instr(bssString,yczChar) ' 返回 9。
wz = Instr(1, bssString, "W") ' 返回 0。
End Sub
三、代碼詳解
1、Sub 示例_1_18():宏程序的開(kāi)始語(yǔ)句。宏名為示例_1_18。
2、Dim bssString, yczChar, wz :變量bssString、yczChar和ws聲明為可變型變量。
3、bssString ="ABpAApCDXPBBP" : 把被搜索的字符串賦給變量bssString。
4、yczChar = "P" : 把要查找的字符P賦給變量yczChar。
5、MsgBox "bssString = "" ABpAApCDPBBP """ & Chr(10) & _
"yczChar= ""P"" 時(shí): " & Chr(10) & Chr(10) & _
"InStr(4, bssString, yczChar, 1) 返回值為 " & _
InStr(4, bssString, yczChar, 1): 用消息框顯示從第四個(gè)字符開(kāi)始,以文本比較的方式找字符P,返回值為 6(小寫(xiě) p的位置)。小寫(xiě) p 和大寫(xiě) P 在文本比較下是一樣的,也就是當(dāng)函數(shù)的最后一個(gè)參數(shù)為1時(shí),查找不分大小寫(xiě)。把要查找的字符P的位置賦給變量yczChar。式中Chr(10)是換行符。
6、wz = Instr(1, bssString, yczChar, 0) :從第一個(gè)字符開(kāi)始,以二進(jìn)制比較的方式查找,返回值為 9(大寫(xiě) P的位置)。小寫(xiě) p 和大寫(xiě) P 在二進(jìn)制比較下是不一樣的,也就是當(dāng)函數(shù)的最后一個(gè)參數(shù)為0時(shí),查找分大小寫(xiě)。把查找到的字符P的位置賦給變量wz。
7、wz = Instr(bssString, yczChar) :上一句也可寫(xiě)成這樣的,因?yàn)槿笔〉谋葘?duì)方式為二進(jìn)制比較(最后一個(gè)參數(shù)可省略)。第一個(gè)參數(shù)省略默認(rèn)從第一個(gè)字符開(kāi)始查找。返回值為 9。
8、wz = Instr(1,bssString, ”W”) :在被搜索的字符串中查找字符W,由于沒(méi)找到返回值為0。
InStr 函數(shù)
返回 Variant (Long),指定一字符串在另一字符串中最先出現(xiàn)的位置。
InStr([start, ]string1, string2[, compare])
InStr 函數(shù)的語(yǔ)法具有下面的參數(shù):
start 可選參數(shù)。為數(shù)值表達(dá)式,設(shè)置每次搜索的起點(diǎn)。如果省略,將從第一個(gè)字符的位置開(kāi)始。如果指定了 compare 參數(shù),則一定要有 start 參數(shù)。
string1 必要參數(shù)。接受搜索的字符串表達(dá)式。
string2 必要參數(shù)。被搜索的字符串表達(dá)式。
Compare可選參數(shù)。指定字符串比較。如果省略 compare,Option Compare 的設(shè)置將決定比較的類(lèi)型。
compare 參數(shù)設(shè)置為:
常數(shù) 值 描述
vbUseCompareOption -1 使用Option Compare 語(yǔ)句設(shè)置執(zhí)行一個(gè)比較。
vbBinaryCompare 0 執(zhí)行一個(gè)二進(jìn)制比較。
vbTextCompare 1 執(zhí)行一個(gè)按照原文的比較。
vbDatabaseCompare 2 僅適用于Microsoft Access,執(zhí)行一個(gè)基于數(shù)據(jù)庫(kù)中信息的比較。
- 2 回答
- 0 關(guān)注
- 118 瀏覽
添加回答
舉報(bào)