InStr 函数

注意: 我们希望能够尽快以你的语言为你提供最新的帮助内容。本页面是自动翻译的,可能包含语法错误或不准确之处。我们的目的是使此内容能对你有所帮助。可以在本页面底部告诉我们此信息是否对你有帮助吗?请在此处查看本文的英文版本以便参考。

返回一个 Variant (Long) 值,指定一个字符串在另一个字符串中首次出现的位置。

请参阅一些示例

语法

InStr ([开始, ] string1,string2 [、 比较] )

InStr函数语法具有以下参数:

参数

描述

开始

可选。设置为每个搜索的起始位置的数值表达式。如果省略,则搜索开头的第一个字符的位置。如果启动包含 Null,则会出现错误。如果指定了比较启动参数是必需的。

string1

必填。要搜索的字符串表达式。

string2

必填。搜索的字符串表达式。

比较

可选。指定字符串比较的类型。如果比较为 Null,则会出现错误。如果省略比较选项比较设置用于确定比较的类型。指定有效的 LCID (区域设置 Id) 比较中使用特定区域设置的规则。

提示: 在 Access 2010 中,表达式生成器具有 IntelliSense,以便您可以查看您的表达式需要哪些参数。

设置

比较参数设置为:

常量

说明

vbUseCompareOption

来执行此操作

使用执行比较比较选项语句的设置。

vbBinaryCompare

0

执行二进制比较。

vbTextCompare

1

执行文本比较。

vbDatabaseCompare

2

Microsoft Office Access 2007仅。执行比较根据数据库中的信息。


返回值

If

InStr 返回

string1 长度为零

0

string1 为 Null

Null

string2 长度为零

入门

string2 为 Null

Null

找不到 string2

0

string2 找到 string1 内

找到匹配项的位置

开始 > string2

0


注解

InStrB函数用于字节包含字符串中的数据。不会返回一个字符串在另一个字符串的第一个匹配项的字符位置, InStrB返回字节位置。

示例

使用 InStr 函数在表达式中   您可以使用表达式的任意位置,您可以使用InStr 。例如,如果您想要查找字段包含 IP 地址 (命名 ip 地址) 中的第一期 (.) 的位置,您可以使用InStr找到它,如下所示:

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

InStr函数检查 ip 地址字段中的每个值,并且返回第一个期间的位置。因此,如果 IP 地址的第一部分是10。,该函数返回 3 的值。

您可以使用InStr函数的输出操作其他函数提取前面第一个时间段,类似这样的 IP 地址的部分:

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

在此示例中, InStr(1,[IPAddress],".")返回第一个期间的位置。减去 1 确定多少个字符的前面的第一个期间,这种情况下,2。Left函数然后从左侧的 ip 地址字段,返回值 10 部分提取该数目的字符。

在 VBA 代码中使用InStr   

注意: 下面的示例说明使用此函数在 Visual Basic for Applications (VBA) 模块。有关处理 VBA 的详细信息,搜索旁边的下拉列表中选择开发人员参考,然后在搜索框中输入一个或多个术语。

此示例使用InStr函数返回一个字符串在另一个字符串的第一个匹配项的位置。

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.
扩展你的 Office 技能
了解培训
抢先获得新功能
加入 Office 预览体验计划

此信息是否有帮助?

谢谢您的反馈!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×