大家帮忙看下代码?

maituo 2010-02-10 03:49:20
'On Error Resume Next
Adodc1.ConnectionString = PublicStr
'ADO控件的RecordSource执行SQL语句
Adodc1.RecordSource = "SELECT tradecode, fullname, type, standard, produce, unit, qty, stockcheck FROM tbS_stock"
Adodc1.Refresh
Call MSF1 '调用过程,初始化MSFlexGrid控件

If Adodc1.Recordset.RecordCount > 0 Then



MS1.Rows = Adodc1.Recordset.RecordCount
For i = 1 To Adodc1.Recordset.RecordCount
MS1.TextMatrix(i, 1) = Adodc1.Recordset.Fields(0)
MS1.TextMatrix(i, 2) = Adodc1.Recordset.Fields(1)
MS1.TextMatrix(i, 3) = Adodc1.Recordset.Fields(2)
MS1.TextMatrix(i, 4) = Adodc1.Recordset.Fields(3)
MS1.TextMatrix(i, 5) = Adodc1.Recordset.Fields(4)
MS1.TextMatrix(i, 6) = Adodc1.Recordset.Fields(5)
MS1.TextMatrix(i, 7) = Adodc1.Recordset.Fields(6)
On Error Resume Next '可以赋值空
MS1.TextMatrix(i, 8) = Adodc1.Recordset.Fields(7)
Adodc1.Recordset.MoveNext '将记录移动到下一条
Next i
'定义MS1表的列序号
For i = 1 To MS1.Rows
MS1.TextMatrix(i, 0) = i
Next i
Else
MsgBox "仓库没有商品"
End If


数据库明明是2条记录 为什么只显示一条 Adodc1.Recordset.RecordCount 的结果 也是2!
...全文
53 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
of123 2010-02-11
  • 打赏
  • 举报
回复
For i = 0 To Adodc1.Recordset.RecordCount - 1
vbman2003 2010-02-10
  • 打赏
  • 举报
回复
'定义MS1表的列序号
For i = 1 To MS1.Rows-1
MS1.TextMatrix(i, 0) = i
Next i
vbman2003 2010-02-10
  • 打赏
  • 举报
回复
可能会出现null,如下处理一下:
MS1.TextMatrix(i, 8) = Adodc1.Recordset.Fields(7) & vbnullstring
vbman2003 2010-02-10
  • 打赏
  • 举报
回复
MS1.Rows = Adodc1.Recordset.RecordCount +1
clear_zero 2010-02-10
  • 打赏
  • 举报
回复
1。你确定你的MS1.TextMatrix有相应的列? 1到8?
2。 你断点debug一下就知道了
maituo 2010-02-10
  • 打赏
  • 举报
回复
不好使还是出不来 On Error Resume Next '可以赋值空 这句话去掉了 提示下标越界 什么意思啊???
易十五 2010-02-10
  • 打赏
  • 举报
回复
在For循环前加这一句
Adodc1.Recordset.MoveFirst

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧