Foxtable(狐表)用户栏目专家坐堂 → [求助]关于重复和条件AB表自动写入


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

主题:[求助]关于重复和条件AB表自动写入

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


加好友 发短信
等级:超级版主 帖子:110592 积分:562856 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/3/9 16:35:00 [显示全部帖子]

1、自己补充完整

For Each r As Row In Tables("表A").Rows
    Dim dr As DataRow = DataTables("表B").Find("第一列='" & r("第一列") & "' and 第二列 ='" & r("第二列") & "'")
    If dr Is Nothing Then
        dr = DataTables("表B").AddNew
        dr("第一列") = r("第一列")
    End If
Next
DataTables("表A").Save()
DataTables("表B").Save()

2、去掉表B的DataColChanging事件代码

DataColChanged事件改为

Dim dr As DataRow = e.DataRow

Select Case e.DataCol.Name

    Case "第一列","第二列","第三列","第四列"

        If dr.IsNull("第一列") = False AndAlso dr.IsNull("第一列") = False AndAlso dr.IsNull("第三列") = False AndAlso dr.IsNull("第四列") = False Then

            If e.DataTable.Compute("Count([_Identify])","第一列 = '" & dr("第一列") & "' And 第二列 = '" & dr("第二列") & "' And 第三列 = '" & dr("第三列") & "' And 第四列 = '" & dr("第四列") & "'") > 1 Then

                MessageBox.Show("已经存在相同型号和规格的行!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)

                e.DataRow(e.DataCol.Name) = e.OldValue '取消输入

            Else

                dr("第六列") = dr("第一列") & "" & dr("第二列") & "" & dr("第三列") & "" & dr("第四列")

            End If

        End If

        

End Select


 回到顶部