| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1075 人关注过本帖
标题:我的这些计算的结果怎么会在Text121 得到“5。600000”这样的结果?
只看楼主 加入收藏
lijun337
Rank: 1
等 级:新手上路
帖 子:379
专家分:5
注 册:2006-4-12
收藏
得分:0 

现在再改为:

Private Sub Command1_Click()
Dim jj, ss, ii As Integer
Dim d() As Integer
Dim f() As Integer
Dim h() As Integer

For ii = 0 To Rst.RecordCount
For jj = 0 To Rst.Fields.Count
If Rst.RecordCount > 0 Then
If Rst.Fields(jj).Value = "银行存款" Then
d(ii) = Rst.Fields(1).Value
h(ii) = Rst.Fields(2).Value
f(ii) = Val(Rst.Fields(jj + 2).Value) + Val(Rst.Fields(jj + 3).Value)
Else
Rst.MoveNext
Print d(ii)
Print f(ii)
Print h(ii)
End If
End If

Next jj
Next ii
End Sub

运行后,出现:

下标越界!

2007-09-01 16:46
slore
Rank: 5Rank: 5
等 级:贵宾
威 望:16
帖 子:1108
专家分:0
注 册:2005-7-1
收藏
得分:0 

Dim d() As Integer
Dim
f() As Integer
Dim
h() As Integer

动态数组……所以你直接赋值不行……
改成:
Dim d() As Integer
Dim
f() As Integer
Dim
h() As Integer

ReDim d(Rst.RecordCount)
ReDim f(Rst.RecordCount)
ReDim h(Rst.RecordCount)


快上课了……
2007-09-01 16:50
lijun337
Rank: 1
等 级:新手上路
帖 子:379
专家分:5
注 册:2006-4-12
收藏
得分:0 

再改:

For ii = 0 To Rst.RecordCount
If Rst.RecordCount > 0 Then
For jj = 0 To Rst.Fields.Count

If Rst.Fields(jj).Value = "银行存款" Then
d(ii) = Rst.Fields(1).Value
h(ii) = Rst.Fields(2).Value
f(ii) = Val(Rst.Fields(jj + 2).Value) + Val(Rst.Fields(jj + 3).Value)
Print d(ii)
Print f(ii)
Print h(ii)
Else
Rst.MoveNext
End If
Next jj
Else
MsgBox "没有记录!"
End If
Next ii

执行时出现:

实时错误“3021”

BOF或EOF中有一个是“真”,或者当前的记录已被删除,所需的操作要求一个当前的记录。

2007-09-01 17:05
lijun337
Rank: 1
等 级:新手上路
帖 子:379
专家分:5
注 册:2006-4-12
收藏
得分:0 


。。。
。。。
ReDim d(Rst.RecordCount)
ReDim f(Rst.RecordCount)
ReDim h(Rst.RecordCount)

。。。
。。。
插入了RDEM,结果:
执行时出现:

实时错误“3021”

BOF或EOF中有一个是“真”,或者当前的记录已被删除,所需的操作要求一个当前的记录。

2007-09-01 17:11
slore
Rank: 5Rank: 5
等 级:贵宾
威 望:16
帖 子:1108
专家分:0
注 册:2005-7-1
收藏
得分:0 
难道没有记录得到了-1
=.=没操作数据库过,不清楚。

快上课了……
2007-09-01 17:13
lijun337
Rank: 1
等 级:新手上路
帖 子:379
专家分:5
注 册:2006-4-12
收藏
得分:0 
回复:(slore)难道没有记录得到了-1=.=没操作数据库...
请你看看,先做了个银行存款日记账模块,成功之后再放到系统里去!
2007-09-01 20:00
lijun337
Rank: 1
等 级:新手上路
帖 子:379
专家分:5
注 册:2006-4-12
收藏
得分:0 
回复:(lijun337)回复:(slore)难道没有记录得到了...
pMO9jWiO.rar (48.02 KB) 我的这些计算的结果怎么会在Text121 得到“5。600000”这样的结果?



有记录啊?怎么为-1呢?
2007-09-01 20:02
slore
Rank: 5Rank: 5
等 级:贵宾
威 望:16
帖 子:1108
专家分:0
注 册:2005-7-1
收藏
得分:0 
看到了……运行到27的时候中断了……
我没有OFFICE看不到数据……但是和REDIM没有关系。

快上课了……
2007-09-01 22:02
lijun337
Rank: 1
等 级:新手上路
帖 子:379
专家分:5
注 册:2006-4-12
收藏
得分:0 
发现问题了……如果你用个single先保存就得到正确结果了……我已经另发帖讨论了

嗯?

看到了……运行到27的时候中断了……???
2007-09-02 12:13
快速回复:我的这些计算的结果怎么会在Text121 得到“5。600000”这样的结果?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.023730 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved