| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3456 人关注过本帖, 1 人收藏
标题:MSFlexGrid的计算
只看楼主 加入收藏
随风逐流
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:passerby
等 级:版主
威 望:8
帖 子:4054
专家分:271
注 册:2007-6-13
收藏
得分:0 
Dim a, b, c, d, e, n, x, row, col As Integer
Dim lngCount    As Long

    With MSFlexGrid2
   
        x = MSFlexGrid1.Rows
        
        lngCount = 1
        .Rows = lngCount
        .Cols = 2
        .TextMatrix(0, 0) = "高度"
        .TextMatrix(0, 1) = "容积"
        
        For n = 1 To x - 2
            
            lngCount = lngCount + 1
            .Rows = lngCount
            
            a = Val(MSFlexGrid1.TextMatrix(n, 0))
            b = Val(MSFlexGrid1.TextMatrix(n, 1))
            
            e = Int((d - b) / (c - a))
            
            .TextMatrix(lngCount - 1, 0) = e
            
            .TextMatrix(lngCount - 1, 0) = a
            
            .TextMatrix(lngCount - 1, 1) = b
            
            a = a + 1
            b = b + e
            
        Next n
   
    End With
没运行,不知道对错。看你自己改了

[url=http://www./html/6/6694/]极道金丹[/url][url=http://www./html/2/2849/]九阴九阳[/url][url=http://www./html/2/2596/]凡人修仙传[/url]
2007-12-27 10:04
lzxagy
Rank: 1
等 级:新手上路
帖 子:69
专家分:0
注 册:2007-8-28
收藏
得分:0 
还是不行.我是要显示成这样的.

2.jpg (26.61 KB)
图片附件: 游客没有浏览图片的权限,请 登录注册
2007-12-27 10:34
随风逐流
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:passerby
等 级:版主
威 望:8
帖 子:4054
专家分:271
注 册:2007-6-13
收藏
得分:0 
MSFlexGrid1是什么数据?看下,还有计算公式给我

[url=http://www./html/6/6694/]极道金丹[/url][url=http://www./html/2/2849/]九阴九阳[/url][url=http://www./html/2/2596/]凡人修仙传[/url]
2007-12-27 10:47
lzxagy
Rank: 1
等 级:新手上路
帖 子:69
专家分:0
注 册:2007-8-28
收藏
得分:0 
计算公式就是插值法.
a = Val(MSFlexGrid1.TextMatrix(n, 0))
b = Val(MSFlexGrid1.TextMatrix(n, 1))
c = Val(MSFlexGrid1.TextMatrix(n + 1, 0))
d = Val(MSFlexGrid1.TextMatrix(n + 1, 1))
e = Int((d - b) / (c - a))

3.jpg (2.95 KB)
图片附件: 游客没有浏览图片的权限,请 登录注册
2007-12-27 10:51
随风逐流
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:passerby
等 级:版主
威 望:8
帖 子:4054
专家分:271
注 册:2007-6-13
收藏
得分:0 
Dim a, b, c, d, e, n, x, row, col As Integer
Dim lngCount    As Long
Dim iRows       As Long

    With MSFlexGrid2
   
        x = MSFlexGrid1.Rows
        If x < 3 Then Exit Sub
        
        a = Val(MSFlexGrid1.TextMatrix(0, 0))
        b = Val(MSFlexGrid1.TextMatrix(0, 1))
        c = Val(MSFlexGrid1.TextMatrix(1, 0))
        d = Val(MSFlexGrid1.TextMatrix(1, 1))
        
        e = Int((d - b) / (c - a))
        
        iRows = MSFlexGrid1.Rows
        
        lngCount = 1
        .Rows = lngCount
        .Cols = 2
        .TextMatrix(0, 0) = "高度"
        .TextMatrix(0, 1) = "容积"
        
        For n = a To Val(MSFlexGrid1.TextMatrix(iRows - 1, 0))
            
            lngCount = lngCount + 1
            .Rows = lngCount
            
            
            
            .TextMatrix(lngCount - 1, 0) = n
            
            .TextMatrix(lngCount - 1, 1) = (n - a) * e + b
            
        Next n
   
    End With

[url=http://www./html/6/6694/]极道金丹[/url][url=http://www./html/2/2849/]九阴九阳[/url][url=http://www./html/2/2596/]凡人修仙传[/url]
2007-12-27 10:59
lzxagy
Rank: 1
等 级:新手上路
帖 子:69
专家分:0
注 册:2007-8-28
收藏
得分:0 
For n = a To Val(MSFlexGrid1.TextMatrix(iRows - 1, 0))中的n=a不对吧
再看看
在文本中输入数,MSFlexGrid1的rows是要变的.如输入5,则就是5行.

[[italic] 本帖最后由 lzxagy 于 2007-12-27 11:14 编辑 [/italic]]

3.jpg (4.51 KB)
图片附件: 游客没有浏览图片的权限,请 登录注册
2007-12-27 11:12
随风逐流
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:passerby
等 级:版主
威 望:8
帖 子:4054
专家分:271
注 册:2007-6-13
收藏
得分:0 
a = Val(MSFlexGrid1.TextMatrix(0, 0))
        b = Val(MSFlexGrid1.TextMatrix(0, 1))
        c = Val(MSFlexGrid1.TextMatrix(1, 0))
        d = Val(MSFlexGrid1.TextMatrix(1, 1))
改成
a = Val(MSFlexGrid1.TextMatrix(1, 0))
        b = Val(MSFlexGrid1.TextMatrix(1, 1))
        c = Val(MSFlexGrid1.TextMatrix(2, 0))
        d = Val(MSFlexGrid1.TextMatrix(2, 1))

[url=http://www./html/6/6694/]极道金丹[/url][url=http://www./html/2/2849/]九阴九阳[/url][url=http://www./html/2/2596/]凡人修仙传[/url]
2007-12-27 11:30
lzxagy
Rank: 1
等 级:新手上路
帖 子:69
专家分:0
注 册:2007-8-28
收藏
得分:0 
谢谢
谢谢!
2007-12-27 11:36
lzxagy
Rank: 1
等 级:新手上路
帖 子:69
专家分:0
注 册:2007-8-28
收藏
得分:0 
这样啊!
怎么还是这样可能代码错了.
 Dim a, b, c, d, e, n, m, x, row, col As Integer
    Dim lngCount    As Long
    Dim iRows       As Long

    With MSFlexGrid2
   
    x = MSFlexGrid1.Rows
   
    For m = 1 To x - 2
   
    a = Val(MSFlexGrid1.TextMatrix(m, 0))
    b = Val(MSFlexGrid1.TextMatrix(m, 1))
    c = Val(MSFlexGrid1.TextMatrix(m + 1, 0))
    d = Val(MSFlexGrid1.TextMatrix(m + 1, 1))
   
    e = Int((d - b) / (c - a))
        
        iRows = MSFlexGrid1.Rows
        
        lngCount = 1
        .Rows = lngCount
        .Cols = 2

        MSFlexGrid2.TextMatrix(0, 0) = "高度"
        MSFlexGrid2.TextMatrix(0, 1) = "容积"
   
     For n = a To Val(MSFlexGrid1.TextMatrix(iRows - 1, 0))
            
            lngCount = lngCount + 1
            .Rows = lngCount
            
            
            .TextMatrix(lngCount - 1, 0) = n
            
            .TextMatrix(lngCount - 1, 1) = (n - a) * e + b

   
     Next n
   

      Next m
     End With

3.jpg (15.29 KB)
图片附件: 游客没有浏览图片的权限,请 登录注册
2007-12-27 15:17
随风逐流
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:passerby
等 级:版主
威 望:8
帖 子:4054
专家分:271
注 册:2007-6-13
收藏
得分:0 
a = Val(MSFlexGrid1.TextMatrix(m, 0))
    b = Val(MSFlexGrid1.TextMatrix(m, 1))
    c = Val(MSFlexGrid1.TextMatrix(m + 1, 0))
    d = Val(MSFlexGrid1.TextMatrix(m + 1, 1))
为什么要这样改?
我给你的代码并没有错.

我给你的代码显示出来哪里错了?
你截个图

[url=http://www./html/6/6694/]极道金丹[/url][url=http://www./html/2/2849/]九阴九阳[/url][url=http://www./html/2/2596/]凡人修仙传[/url]
2007-12-27 15:33
快速回复:MSFlexGrid的计算
数据加载中...
 
   



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

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