Foxtable(狐表)用户栏目专家坐堂 → 这样的自动输入怎么实现?


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

主题:这样的自动输入怎么实现?

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


加好友 发短信
等级:四尾狐 帖子:824 积分:6294 威望:0 精华:0 注册:2012/3/1 3:17:00
这样的自动输入怎么实现?  发帖心情 Post By:2013/7/12 22:10:00 [只看该作者]

上图,上项目先,项目中表A为资料表,表B为输入表,表A中的内容如图1那样, 长度列的内容 50  10  20 70 代码在这个长度以上的单价,10以上的长度单价为20,达到20以上的

 

长度单价为50,以此类推,想实现在表B长度列中输入 11 后 就从表A中找出符合 11 的单价输入到 单价列 中  ,比如 11长度在表A中的单价为20  ,25长度在表A中的单价为

 

50,

 

If e.DataCol.Name = "长度" Then

    If e.DataRow.IsNull("长度") Then 

        e.DataRow("单价") = Nothing 

    Else
        Dim dr As DataRow
        dr = DataTables("表A").Find("长度 = " & "'" & e.DataRow("长度") & "'" )   这里的代码要怎么改? 请教老师
        If dr IsNot Nothing '如果找到, 则设置各列内容
            e.DataRow("单价") = dr("单价")
        End If
    End If
End If

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


图片点击可在新窗口打开查看此主题相关图片如下:图1.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:图2.png
图片点击可在新窗口打开查看

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


加好友 发短信
等级:四尾狐 帖子:824 积分:6294 威望:0 精华:0 注册:2012/3/1 3:17:00
  发帖心情 Post By:2013/7/12 23:50:00 [只看该作者]

For i As Integer = v To 1 Step -1
            dr = DataTables("表A").Find("长度 = '" & i & "'" )
            If dr IsNot Nothing '如果找到, 则设置各列内容
                e.DataRow("单价") = dr("单价")
                Exit For               
            End If
        Next   

 

原来代码改成这样即可


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


加好友 发短信
等级:小狐 帖子:393 积分:2498 威望:0 精华:0 注册:2013/4/17 6:41:00
  发帖心情 Post By:2013/7/13 6:21:00 [只看该作者]

试验了一下,未成功,出现:For i As Integer = v To 1 Step -1为错误代码,请问高手为什么?


 回到顶部
帅哥,在线噢!
y2287958
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:4773 积分:34673 威望:0 精华:0 注册:2008/8/31 22:44:00
  发帖心情 Post By:2013/7/13 7:56:00 [只看该作者]

If e.DataCol.Name = "长度"
    For Each dr As DataRow In DataTables("表A").Select("长度>0","长度 DESC")
        If e.NewValue >= dr("长度")
            Dim dr1 As DataRow = DataTables("表A").Find("长度=" & dr("长度"))
            e.DataRow("单位") = dr1("单位")
            Exit For
        End If
    Next
End If
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:按值期间引用.zip


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


加好友 发短信
等级:四尾狐 帖子:824 积分:6294 威望:0 精华:0 注册:2012/3/1 3:17:00
  发帖心情 Post By:2013/7/13 17:23:00 [只看该作者]

以下是引用ZHX241806在2013-7-13 6:21:00的发言:

试验了一下,未成功,出现:For i As Integer = v To 1 Step -1为错误代码,请问高手为什么?

Dim v As Integer = e.DataRow("长度")    因为少了这行,V的值

For i As Integer = v To 1 Step -1
            dr = DataTables("表A").Find("长度 = '" & i & "'" )
            If dr IsNot Nothing '如果找到, 则设置各列内容
                e.DataRow("单价") = dr("单价")
                Exit For               
            End If
        Next   

 


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


加好友 发短信
等级:四尾狐 帖子:824 积分:6294 威望:0 精华:0 注册:2012/3/1 3:17:00
  发帖心情 Post By:2013/7/13 17:25:00 [只看该作者]

   感谢 y2287958,代码可以实现

 回到顶部