Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共9 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:这句代码如何能做到不出现以下的那个提示?

1楼
blackzhu 发表于:2011/5/22 19:03:00

Select Case e.DataCol.Name
    Case "第一列"
        With Tables("表A")
            For i As Integer = 0 To Tables("表A").Count -1
                .Rows(i)("第九列")= .Rows(i,i)("第一列") *.Rows(i+1)("第一列")  '选定行相乘
            Next
        End With
End Select

 

 

 



此主题相关图片如下:提示.jpg
按此在新窗口浏览图片
2楼
blackzhu 发表于:2011/5/22 20:32:00
C版你在,帮我看看这个.
3楼
blackzhu 发表于:2011/5/22 20:48:00
两位老大都在不帮我看看.
4楼
狐狸爸爸 发表于:2011/5/22 20:55:00

问题出在红色的位置,难道你有1000行,就有1000列?

 

.Rows(i,i)("第一列") *.Rows(i+1)("第一列")

5楼
blackzhu 发表于:2011/5/22 21:00:00

不对,这个是我测试不过来,当时加了这个看看的.

 

Select Case e.DataCol.Name
    Case "第一列"
        With Tables("表A")
            For i As Integer = 0 To Tables("表A").Count -1
                .Rows(i)("第九列")= .Rows(i)("第一列") *.Rows(i+1)("第一列")  '选定行相乘
            Next
        End With
End Select

 

当时这个代码出现提示的.

 

6楼
blackzhu 发表于:2011/5/22 21:02:00
其实问题是上下行相加到本表内的另外一列的,结果列的行数比参与计算的行少了一行.所以一直出现这个提示.
7楼
狐狸爸爸 发表于:2011/5/22 21:17:00
以下是引用blackzhu在2011-5-22 21:00:00的发言:

不对,这个是我测试不过来,当时加了这个看看的.

 

Select Case e.DataCol.Name
    Case "第一列"
        With Tables("表A")
            For i As Integer = 0 To Tables("表A").Count -1
                .Rows(i)("第九列")= .Rows(i)("第一列") *.Rows(i+1)("第一列")  '选定行相乘
            Next
        End With
End Select

 

当时这个代码出现提示的.

 

 

这也是有严重错误的,当i循环到Tables("表A").Count -1时,i+1等于Tables("表A").Count ,那么:

.Rows(i+1)("第一列")

肯定会出错,因为根本就不存在编号为Tables("表A").Count的行,行的编号最大为Tables("表A").Count -1

 

你的循环代码应该改为:

 For i As Integer = 0 To Tables("表A").Count -2

8楼
blackzhu 发表于:2011/5/22 21:19:00
我再研究,可以了.
9楼
blackzhu 发表于:2011/5/22 21:26:00
      我就没有试试-2,当时我想这个应该是0到-1为最后一行.就没有想到因为I+1,这个+1和+1正好抵消,那么最后一行的-1,还是没有,就应该给他个-1,所以应该再多加上一个-1,就是应该是-2..明白了,其实很简单,对这个我有加深了了解.谢谢!
共9 条记录, 每页显示 10 条, 页签: [1]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .02344 s, 2 queries.