vb高手请进(10点之前在线等)

[复制链接]
查看11 | 回复3 | 2009-6-21 21:35:49 | 显示全部楼层 |阅读模式
对象变量或 With 块变量没有设置(错误 91)创建对象变量有两个步骤。第一,必须先声明对象变量。然后必须用 Set 语句将一个正确的引用赋值给对象变量。同样地,With...End With 块必须先用 With 语句进入点来执行初始化。此错误有以下的原因和解决方法: 试图使用的对象变量,还没有用一个正确对象的引用来赋值。 给对象变量指定或再指定一个引用。例如,如果在下列的代码中省略 Set 语句的话,那么引用 MyObject 将会产生错误:Dim MyObject As Object
' 创建对象变量。Set MyObject = Sheets(1)
' 创建一个正确的对象引用。MyCount = MyObject.Count
' 计数值赋给 MyCount。试图用的对象变量已经被设为 Nothing。 Set MyObject = Nothing
' 释放此对象。MyCount = MyObject.Count
' 引用了已释放的对象。再指定引用给对象变量。例如,使用新的 Set 语句给对象设置新的引用。此对象是正确的对象,但没有被设置,因为在对象库中,在 “引用” 对话框中没有被选取。 在 “添加引用” 对话框选择对象库。在 With 块内GoTo 语句的去向。 不要跳进 With 块。确保块使用 With 语句进入点以执行初始化。当选了 “设置下一条语句” 命令时,在 With 块内指定了一行。 With 块必须用 With 语句执行初始化。==========================================你的错误应该是:你定义了一个数据库链接(或者链接对象,或者控件)但是没有对这个链接初始化(如set conn=createobject("adodb.connection"))或者赋值,导致该对象为空,所以当你使用这个对象的时候就会出问题。一个窗口是无法直接使用另一个窗口上的ado控件的,需要引用的时候必须带上窗体名字,比如在form2中使用form1里的data1控件,就必须使用:form1.Data1.这样的格式才是正确的,如果form1中的data1没有初始化或者这个窗口没有打开,则报错参考资料:http://bjgangguan.com/shengchanguige.html

已赞过已踩过<
回复

使用道具 举报

千问 | 2009-6-21 21:35:49 | 显示全部楼层
1。username_ok没有定义,你前边用了Option Explicit2。一般 Unload Me Form2.Show这两句话顺序要换下3.也有可能是过程提前结束,但条件语句没有结束,不防在此增加个判断变量。不知道有否帮助
回复

使用道具 举报

千问 | 2009-6-21 21:35:49 | 显示全部楼层
问题出在哪一行,只看代码很难的.
回复

使用道具 举报

千问 | 2009-6-21 21:35:49 | 显示全部楼层
Dim mrc As ADODB.Recordset有问题,改为Dim mrc As New ADODB.Recordset试试.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行