Foxtable(狐表)用户栏目专家坐堂 → [求助]


  共有2339人关注过本帖树形打印复制链接

主题:[求助]

帅哥哟,离线,有人找我吗?
lzj
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:109 积分:949 威望:0 精华:0 注册:2017/9/8 18:06:00
[求助]  发帖心情 Post By:2018/9/7 12:05:00 [只看该作者]

我有一段完整的case 程序(想上传附件,怎么也不会搞)请大师帮我分析一下:

 

    Case "lll"
        dim h As Integer
        for h=60 to 130 step 10
            dim i As Integer
            if  e.row("lwan1a") < h then
                for i = 1 to  Tables("jiben").rows.count-f-1
                    Dim j As Integer
                    Dim a As Integer
                    if Tables("jiben").rows(f+i)("lwan1a")=h
                        for j=1 to 20
                            if f+i+j=Tables("jiben").rows.count-f then
                                exit for
                            end if
                            if Tables("jiben").rows(f+i+j)("wan1a")="★"
                                a=a+1
                                if a=5 then
                                    exit for
                                end if
                            else
                                a=a-1
                                if a=-5 then
                                    exit for
                                end if
                            end if
                        next
                        Tables("jiben").rows(f+i)("lll")=a
                        exit for
                    end if
                next
            end if
        next

 

按照我的目的,最后一个循环应该得到-5到5之间的数,但结果有这之外的数,而且还没有负数,这个问题困扰我好久了,请大师指点


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/9/7 12:11:00 [只看该作者]

做个具体例子测试,说明你要做的功能是什么。

 

http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&Id=78

 


 回到顶部
帅哥哟,离线,有人找我吗?
lzj
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:109 积分:949 威望:0 精华:0 注册:2017/9/8 18:06:00
  发帖心情 Post By:2018/9/7 12:20:00 [只看该作者]

大师好,选择好文件后点击上传附件,提示“请正确选择要上传的文件“


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/9/7 12:28:00 [只看该作者]

以下是引用lzj在2018/9/7 12:20:00的发言:

大师好,选择好文件后点击上传附件,提示“请正确选择要上传的文件“

 

用ie浏览器访问论坛。


 回到顶部
帅哥哟,离线,有人找我吗?
lzj
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:109 积分:949 威望:0 精华:0 注册:2017/9/8 18:06:00
  发帖心情 Post By:2018/9/7 13:18:00 [只看该作者]

也是一样的啊。

就帮助我分析一下代码哪个地方有问题吧,大问题应该没有,问题就出在最后一个循环上

 回到顶部
帅哥哟,离线,有人找我吗?
lzj
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:109 积分:949 威望:0 精华:0 注册:2017/9/8 18:06:00
  发帖心情 Post By:2018/9/7 14:38:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目3.table

我有一段完整的case 程序(想上传附件,怎么也不会搞)请大师帮我分析一下:

Case "lll"
dim h As Integer
for h=60 to 130 step 10
dim i As Integer
if e.row("lwan1a") < h then
for i = 1 to Tables("jiben").rows.count-f-1
Dim j As Integer
Dim a As Integer
if Tables("jiben").rows(f+i)("lwan1a")=h
for j=1 to 20
if f+i+j=Tables("jiben").rows.count-f then
exit for
end if
if Tables("jiben").rows(f+i+j)("wan1a")="★"
a=a+1
if a=5 then
exit for
end if
else
a=a-1
if a=-5 then
exit for
end if
end if
next
Tables("jiben").rows(f+i)("lll")=a
exit for
end if
next
end if
next

按照我的目的,最后一个循环应该得到-5到5之间的数,但结果有这之外的数,而且还没有负数,这个问题困扰我好久了,请大师指点


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/9/7 14:49:00 [只看该作者]

1、你运算的逻辑是什么,请具体说明。

 

2、不应该在preparedit事件写代码,如果要写,单独做一个按钮写更好。


 回到顶部
帅哥哟,离线,有人找我吗?
lzj
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:109 积分:949 威望:0 精华:0 注册:2017/9/8 18:06:00
  发帖心情 Post By:2018/9/7 18:15:00 [只看该作者]

1、找到"lwa1a"列第一次出现60的行;

2、在这一行再往后找20行,如果"wan1a"="*"(就是星号)就+1,反之-1;累计=5或-5停止循环;在这一行的“lll”列输入      累计结果

3、找到"lwa1a"列第一次出现70的行;重复第二步;再找到"lwa1a"列第一次出现80的行;重复第二步。。。。
     一直找到=130的行
    

就是这个逻辑,按理说这个结果应该是-5到5之间的数,我这个代码运行之后有大于5的数,而且还没有负数,不知道问题出在哪里

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110592 积分:562856 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/9/7 21:47:00 [只看该作者]

做个按钮,或者到命令窗口执行

Dim t As Table= Tables("表A")
Dim r As Row
For i As Integer = 60 To 130 Step 10
    Dim value As Integer = i
    Dim cnt As Integer = 1
    Dim idx As Integer = t.FindRow("lwan1a=" & i)
    If idx > -1 Then
        Dim k As Integer = idx + 20
        If k > t.Rows.count-1 Then
            k = t.Rows.count-1
        End If
        For j As Integer = idx+1 To k
            r = t.Rows(j)
            If r("wan1a") = "★" Then
                value += 1
                If cnt < 0 Then
                    cnt = 1
                Else
                    cnt += 1
                End If
            Else
                value -= 1
                If cnt > 0 Then
                    cnt = -1
                Else
                    cnt -= 1
                End If
            End If
            r("lwan1a") = value
            If Math.Abs(cnt) = 5 Then
                t.Rows(idx)("lll") =cnt
                Exit For
            End If
        Next
    End If
Next


 回到顶部
帅哥哟,离线,有人找我吗?
lzj
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:109 积分:949 威望:0 精华:0 注册:2017/9/8 18:06:00
  发帖心情 Post By:2018/9/7 22:54:00 [只看该作者]

谢谢大师不辞辛劳编写的代码,我在命令窗口执行,只是找到了“lwan1a”=60的一行,还有70、80、90。。。。。130没有达到我的要求。

 

我现在还没有学到按钮那一块,您写的代码我也还看不太懂。我现在习惯在preparEedit事件编写代码,因为这里不需要动态合成表达式,查找行比较方便,这个也

 

是我现在的短板,以后再慢慢学。就请大师帮我分析一下我的代码,看问题出在哪儿,关键是找原因,有助我学习。我自己写的代码能够运行,我仔细的查看了没一

 

个环节,找不到问题所在

 

拜托!!!


 回到顶部
总数 13 1 2 下一页