回覆列表
  • 1 # 阿狸他娘

    Instr函式一、題目:要求編寫一段程式碼,運用Instr函式,在一字串中查詢另一字串並返回結果。二、程式碼:Sub 示例_1_18() Dim bssString, yczChar, wz bssString ="ABpAApCDPBBP" yczChar = "P" MsgBox "bssString = "" ABpAApCDPBBP """ & Chr(10) & _ "yczChar= ""P"" 時: " & 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():宏程式的開始語句。宏名為示例_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"" 時: " & Chr(10) & Chr(10) & _"InStr(4, bssString, yczChar, 1) 返回值為 " & _InStr(4, bssString, yczChar, 1): 用訊息框顯示從第四個字元開始,以文字比較的方式找字元P,返回值為 6(小寫 p的位置)。小寫 p 和大寫 P 在文字比較下是一樣的,也就是當函式的最後一個引數為1時,查詢不分大小寫。把要查詢的字元P的位置賦給變數yczChar。式中Chr(10)是換行符。6、wz = Instr(1, bssString, yczChar, 0) :從第一個字元開始,以二進位制比較的方式查詢,返回值為 9(大寫 P的位置)。小寫 p 和大寫 P 在二進位制比較下是不一樣的,也就是當函式的最後一個引數為0時,查詢分大小寫。把查詢到的字元P的位置賦給變數wz。7、wz = Instr(bssString, yczChar) :上一句也可寫成這樣的,因為預設的比對方式為二進位制比較(最後一個引數可省略)。第一個引數省略預設從第一個字元開始查詢。返回值為 9。8、wz = Instr(1,bssString, ”W”) :在被搜尋的字串中查詢字元W,由於沒找到返回值為0。InStr 函式返回 Variant (Long),指定一字串在另一字串中最先出現的位置。InStr([start, ]string1, string2[, compare])InStr 函式的語法具有下面的引數:start 可選引數。為數值表示式,設定每次搜尋的起點。如果省略,將從第一個字元的位置開始。如果指定了 compare 引數,則一定要有 start 引數。string1 必要引數。接受搜尋的字串表示式。string2 必要引數。被搜尋的字串表示式。Compare可選引數。指定字串比較。如果省略 compare,Option Compare 的設定將決定比較的型別。compare 引數設定為:常數 值 描述vbUseCompareOption -1 使用Option Compare 語句設定執行一個比較。vbBinaryCompare 0 執行一個二進位制比較。vbTextCompare 1 執行一個按照原文的比較。vbDatabaseCompare 2 僅適用於Microsoft Access,執行一個基於資料庫中資訊的比較。

  • 中秋節和大豐收的關聯?
  • 領導工作不認真,是否該直接找老闆溝通?