首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

请大家帮小弟我看看这个在excel中的vb语句为什么报错?

2012-01-11 
请大家帮我看看这个在excel中的vb语句为什么报错??我在excel中放置了一个文本框和按钮,目的是在文本框中输

请大家帮我看看这个在excel中的vb语句为什么报错??
我在excel中放置了一个文本框和按钮,目的是在文本框中输入后,点击按钮能把sql   server数据库某个表中的数据提取出来放到excel中,语句如下:
Private   Sub   CommandButton1_Click()
        Dim   qt   As   QueryTable
        sqlstring   =   "select   ITEM,ITEM_DESC,UM   from   ITEMLIST   Where   ITEM= ' "   &   TextBox1.Text   &   " '   order   by   ITEM   "
        connstring   =   "ODBC;DSN=DBMR;UID=sa;PWD=1234;Database=DatabaseMR "
        Set   qt   =   Workbooks(1).Worksheets(1).QueryTables(1)
        With   qt
                .Connection   =   connstring
                .Destination   =   Range( "A1 ")
                .CommandType   =   xlCmdSql
                .CommandText   =   sqlstring
                .Refresh   BackgroundQuery:=False
        End   With
End   Sub

可是执行时抱错,说下面这个语句有错误:
Set   qt   =   Workbooks(1).Worksheets(1).QueryTables(1)
运行时错误 '9 ',下标越界。

请问如何解决???

[解决办法]
Private Sub CommandButton1_Click()
Dim qt As QueryTable
sqlstring = "select ITEM,ITEM_DESC,UM from ITEMLIST Where ITEM= ' " & TextBox1.Text & " ' order by ITEM "
connstring = "ODBC;DSN=DBMR;UID=sa;PWD=1234;Database=DatabaseMR "
Set qt = Workbooks(1).Worksheets(1).QueryTables.Add(connstring, Range( "A1 "), sqlstring)
qt.Refresh BackgroundQuery:=False
End With
End Sub

热点排行