以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  代码  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=94815)

--  作者:chen1029
--  发布时间:2017/1/3 9:24:00
--  代码

需要解决的问题:

1、表“庆前”中的列“一”“二”“三”和表“庆”中的列“一”“二”“三”数据同步,表“庆”中增加行,表“庆前”也随着增加行。

2、表“庆前”中的列“庆012346”要判断列“一”“二”“三”中的字符是否全部包含在

{"0""1""2""3""4""6"}中,如果是就打"",否就自动编号。datacolchanged事件中的代码是不是错了,无法准确判断。

3、

“庆前”和表“庆”重置列的时候,所显示的行数也不一样呀,要求显示一样的行数,同步。

--  作者:chen1029
--  发布时间:2017/1/3 9:25:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:数据同步问题.table


--  作者:chen1029
--  发布时间:2017/1/3 9:27:00
--  
Select Case e.DataCol.name
    Case "一"
        Dim dr As DataRow = DataTables("庆前").Find("一 = \'" & e.OldValue & "\'")
        If dr Is Nothing Then 
            dr = DataTables("庆前").AddNew()
            dr("一") = e.DataRow("一")
            dr("二") = e.DataRow("二")
            dr("三") = e.DataRow("三")
        Else
            dr("一") = e.DataRow("一")
        End If
    Case "二","三"
        Dim dr As DataRow = DataTables("庆前").Find("一 = \'" & e.DataRow("一") & "\'")
        If dr IsNot Nothing Then
            dr(e.DataCol.Name) = e.DataRow(e.DataCol.Name)
        End If
End Select
上面的数据同步如果改成以行号为变量,应该怎么改
也可以是把表“庆”中的列“一”“二”“三”同步复制到表“庆前”的“一”“二”“三”列中

--  作者:chen1029
--  发布时间:2017/1/3 9:30:00
--  
由于本人知识有限,还望大师帮忙!!
--  作者:有点色
--  发布时间:2017/1/3 9:33:00
--  

加一个列,记录唯一的值。

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:数据同步问题.table


--  作者:chen1029
--  发布时间:2017/1/3 12:07:00
--  
需要解决的问题:
1、所有列“庆......"中的判断是在√之后自动从1开始编号到下一个√出现停止。
2、表“前列”和表“庆”的数据同步,达到的效果要跟表“庆”和“庆前”的一样。
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:重庆.table


--  作者:有点色
--  发布时间:2017/1/3 12:20:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:重庆.table


--  作者:chen1029
--  发布时间:2017/1/3 12:37:00
--  
我粘贴了500行数据,程序为何不响应了,哪怕是删除数据,也是响应迟缓?
--  作者:chen1029
--  发布时间:2017/1/3 12:52:00
--  
从电子表格中复制然后粘贴到数据行500条,可是总是未响应
--  作者:有点色
--  发布时间:2017/1/3 14:18:00
--  

 那就不要做实时的匹配。单独写一个按钮执行那些代码,如

 

For Each dc As DataCol In DataTables("庆前").DataCols
    If dc.Name.StartsWith("庆") AndAlso dc.name.Length = 7 Then
        Dim str As String = dc.Name.Replace("庆", "")
        Dim idx As Integer = 1
        For Each r As Row In Tables("庆前").rows
            If str.IndexOf(r("一")) >= 0 AndAlso str.IndexOf(r("二")) >= 0 AndAlso str.IndexOf(r("三")) >= 0 Then
                r(dc.name) = "√"
                idx = 1
            Else
                r(dc.name) = idx
                idx = idx + 1
            End If
        Next
    End If
Next