subinstr函数怎么用(subinstr命令)

http://www.itjxue.com  2023-01-30 03:35  来源:未知  点击次数: 

VB 6.0 中instr函数应用

我的思路是把like函数y与instr函数结合

Private Sub Command1_Click()

a = InStr(string1, "$gprsc")

If a 0 Then

If Mid(string1, a, 34) Like "$gprsc,#,?,abcd,####.##.##,efghijk" = True Then

MsgBox "找到指定字符,其在第" a "处" Chr(13) Chr(10) "其为" Mid(string1, a, 34)

Else

MsgBox "找不到"

End If

End If

End Sub

VB查找怎么做啊

 实现查找功能的关键在于使用InStr函数,这个函数可以找到指定的字符串在另一字符串中最先出现的位置。我们先来看一看使用这个函数的语法:

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

这个函数需要的的参数是起始位置、主体字符串、要查找的字符串;Compare是

VB中如何实现文本查找功能

实现查找功能的关键在于使用InStr函数,这个函数可以找到指定的字符串在另一字符串中最先出现的位置。我们先来看一看使用这个函数的语法:

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

这个函数需要的的参数是起始位置、主体字符串、要查找的字符串;Compare是可选参数。指定字符串比较。此compare参数是可以省略的,也可以是 0, 1或 2。指定0(缺省)做二进制比较。指定1做不区分大小写的文本比较。例如我们要查找在字符串“abcdefg”中是否存在“cd”并返回其位置,则使用下面的语句就可以实现:

 pos=InStr(1,"abcdefg","cd")

则pos会返回3表示查找到并且位置为第三个字符开始。这就是“查找”的实现,而“查找下一个”功能的实现就是把当前位置作为起始位置继续查找。

下面举例说明:

放置一个文本框TEXT1供用户输入文本或调入文本文件,用来做在其中查找文本的验证,放置另一个文本框TEXT2供用户输入要查找的字符串,放置两个命令按钮,Command1、Command2,其标题分别为“查找”、“查找下一个”。

在窗体的总体声明部分写如下代码 :

 Option Explicit ’定义目标位置变量

 Private TargetPosition As Integer

  ’编写一个查找函数

 Private Sub FindText(ByVal start_at As Integer)

 Dim pos As Integer

 Dim target As String

 ’获取用户输入的要查找的字符串

 target = text2.Text

 pos = InStr(start_at, text1.Text, target)

 If pos 0 Then

’找到了匹配字符串

TargetPosition = pos

text1.SelStart = TargetPosition - 1

’选中找到的字符串

text1.SelLength = Len(target)

text1.SetFocus

 Else ’没有找到匹配的字符串

 MsgBox "没找到!"

 text1.SetFocus

 End If

 End Sub

 ’双击“查找”命令按钮:

 Private Sub command1_Click() ’从第一个字符处开始查找

 FindText 1

 End Sub

 ’双击“查找下一个”按钮:

 Private Sub command2_Click() ’从当前位置继续查找

 FindText TargetPosition + 1

 End Sub

运行程序,在文本框1中输入一些字符串,在文本框2中输入要查找的字符串,单击 “查找”按钮和“查找下一个”按钮进行验证。

在excel中如何用vba来实现查找特定的字符串?

1、首先打开需要编辑的Excel表格,进入到编辑的的页面中。

2、然后在弹出来的窗口中,鼠标右键单击工作表,选择打开“查看代码”。

3、然后在弹出来的窗口中,点击输入代码:

Sub AAA()

Dim I As Long

For I = 1 To 1000 '行 范围,自己修改

If InStr(Range("A" I), "invalidstatus") 0 Then

Range("A" I).Font.Color = vbRed

End If

Next

End Sub

4、然后进行保存,点击运行就完成了。

VBA instr函数的具体运用?

R的字符串数量为14。

instr(r,i)

当i为1,或2的时候,则返回7,14。

此时,instr(r,i)0 这个条件成立,执行cells语句。

就出现了你现在的这个问题。

解决办法:

第一,循环改为3 to 14

或在循环内,加一个变量,x

x=i+2

后面两个i变量全部改成x

求教EXCEL VBA中,InStr的详细用法。

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,执行一个基于数据库中信息的比较。

excel 宏的问题,如何判断一个字符串变量str中包含另一个字符串变量strin,如果包含则进行步骤一。

Sub?test1()

Dim?Str1,?Str2?As?String

Str1?=?"ABCDEFG"

Str2?=?"Cb"

'方法1使用instr函数

If?InStr(Str1,?Str2)??0?Then

????MsgBox?"包含"

Else

????MsgBox?"不包含"

End?If

'方法2?使用like运算符

If?Str1?Like?"*"??Str2??"*"?Then

????MsgBox?"包含"

Else

????MsgBox?"不包含"

End?If

End?Sub

(责任编辑:IT教学网)

更多

推荐时间特效文章