VB6.0有一种情况:没有设置object变量或者with block变量。怎么解决?

应该是这行(Adodc1。Recordset.Find "用户名= ' " &;Text1。文本&"")没什么问题。

看代码,这行下面的代码应该没问题。

因此,有必要检查Adodc1。记录集对象已打开。

如果您确定它已经打开,您可以在。

Adodc1。Recordset.Find "用户名= ' " &;Text1。文本&"

尝试在它之前添加adodc 1 . recordset . move first。

请参考以下文件。

-

查找方法

在记录集中搜索满足指定条件的行。或者,指定搜索方向、起始行和从起始行的偏移。如果满足条件,将在找到的记录上设置当前行的位置;否则,当前行位置将被设置为记录集的结尾(或开头)。

语法

查找(标准,跳过,搜索方向,开始)

参数

标准

一个字符串值,包含指定列名、比较运算符和搜索值的语句。

SkipRows

可选。长整型值,默认值为零,指定当前行的行偏移量或开始搜索的起始书签。默认情况下,搜索将从当前行开始。

搜索方向

可选。一个SearchDirectionEnum值,指定搜索是从当前行开始还是从搜索方向的下一个有效行开始。如果值为adSearchForward,不成功的搜索将在记录集的末尾停止。如果值为adSearchBackward,不成功的搜索将在记录集的开头停止。

开始

可选。变体书签,用于标记搜索的开始位置。

解释

在条件中只能指定单个列名。此方法不支持多列搜索。

条件中的比较运算符可以是“>”(大于),”;= "(大于或等于),"

标准中的值可以是字符串、浮点数或日期。字符串值由单引号或“#”标记(数字)分隔(如“state = 'WA '”或“state = #WA#”)。日期值由“#”符号(数字)分隔(例如“开始日期>;#7/22/97# ")并且可以包括小时、分钟和秒来指示时间戳,但是不能包括毫秒,否则将发生错误。

如果比较运算符是“like”,则可以在字符串值中包含星号(*),以查找任何字符或子字符串的一个或多个匹配项。例如,“像‘M *’这样的州”匹配缅因州和马萨诸塞州。还可以使用前导星号和尾随星号来查找值中包含的子字符串。例如,“state like '*as* '”匹配阿拉斯加、阿肯色州和马萨诸塞州。

星号只能用在条件字符串的末尾,或者同时用在条件字符串的开头和结尾,如上所示。不能将星号用作前导通配符(' *str ')或嵌入通配符(' s*r ')。这将导致错误。

注意如果在调用Find之前没有设置当前行的位置,将会发生错误。任何设置行位置的方法,如MoveFirst,都应该在调用Find之前调用。

注意如果调用了记录集的Find方法,并且记录集的当前位置位于最后一条记录或文件末尾(EOF ),则找不到任何结果。您需要调用MoveFirst方法将当前位置/光标设置到记录集的开头。