Foxtable(狐表)用户栏目专家坐堂 → [求助]列新增数据时录入在已存在行的空白单元格里


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

主题:[求助]列新增数据时录入在已存在行的空白单元格里

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


加好友 发短信
等级:四尾狐 帖子:812 积分:6676 威望:0 精华:0 注册:2014/11/26 12:32:00
[求助]列新增数据时录入在已存在行的空白单元格里  发帖心情 Post By:2019/8/21 12:23:00 [只看该作者]

列:横向列名汇总 新增数据时不想新增行,想实现录入在已存的空白单元格里,下面代码怎么实现? 求助

Select Case e.DataCol.name
    Case "参照"
        If e.DataRow.IsNull("参照") = False Then
            Dim fdr As DataRow = DataTables("表A").Find("横向列名汇总 = '" & e.DataRow("参照") & "' ")
            If fdr Is Nothing Then
                Dim ndr As DataRow = DataTables("表A").addnew
                ndr("横向列名汇总") = e.DataRow("参照")
            End If
        End If
End Select

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105470 积分:536335 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/8/21 14:22:00 [只看该作者]

代码没有问题,只是信息量太少,看不出想要做什么

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


加好友 发短信
等级:四尾狐 帖子:812 积分:6676 威望:0 精华:0 注册:2014/11/26 12:32:00
回复:(有点蓝)代码没有问题,只是信息量太少,看不...  发帖心情 Post By:2019/8/21 14:45:00 [只看该作者]

 表A 列:横向列名汇总 已存在10行空白的,假如新增小于10个值,就不用新增行录入;假如超过10个值要录入,再新增行录入
[此贴子已经被作者于2019/8/21 14:45:37编辑过]

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


加好友 发短信
等级:超级版主 帖子:105470 积分:536335 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/8/21 15:08:00 [只看该作者]

还是没看懂,截图或者举例说明

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


加好友 发短信
等级:四尾狐 帖子:812 积分:6676 威望:0 精华:0 注册:2014/11/26 12:32:00
回复:(有点蓝)还是没看懂,截图或者举例说明  发帖心情 Post By:2019/8/21 15:40:00 [只看该作者]

如下图,空白的10个单元格,先录入

超过10个值要录入才新增行

 


图片点击可在新窗口打开查看此主题相关图片如下:空白的10行先录入.jpg
图片点击可在新窗口打开查看


 回到顶部
帅哥,在线噢!
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105470 积分:536335 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/8/21 15:50:00 [只看该作者]

Select Case e.DataCol.name
    Case "参照"
        If e.DataRow.IsNull("参照") = False Then
            Dim fdr As DataRow = DataTables("表A").Find("横向列名汇总 is null ")
            If fdr Is Nothing Then
                fdr = DataTables("表A").addnew
            End If
                fdr ("横向列名汇总") = e.DataRow("参照")
        End If
End Select

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


加好友 发短信
等级:四尾狐 帖子:812 积分:6676 威望:0 精华:0 注册:2014/11/26 12:32:00
回复:(有点蓝)Select Case e.DataCol.name &n...  发帖心情 Post By:2019/8/22 16:21:00 [只看该作者]

 如果只是窗口筛选出的行,不是整个数据表DataTable,上楼代码怎么修改呢?

 回到顶部
帅哥,在线噢!
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105470 积分:536335 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/8/22 16:28:00 [只看该作者]


Select Case e.DataCol.name
    Case "参照"
        If e.DataRow.IsNull("参照") = False Then
            Dim idx As Integer =  Tables("表A").FindRow("横向列名汇总 is null")
            Dim fdr As DataRow
            If idx = -1 Then
                fdr = DataTables("表A").addnew
            Else
                fdr = Tables("表A").Rows(idx).DataRow
            End If
            fdr ("横向列名汇总") = e.DataRow("参照")
        End If
End Select

 回到顶部