以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]目录树  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=147914)

--  作者:江南小镇
--  发布时间:2020/3/27 8:31:00
--  [求助]目录树
老师好

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:目录树.rar



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

--  作者:有点蓝
--  发布时间:2020/3/27 11:31:00
--  
测试没有问题。您代码里自己判断了选中哪个表就算哪个表,没有选中的不计算。如果不需要这些画蛇添足的用法去掉选中表的判断
--  作者:江南小镇
--  发布时间:2020/3/27 12:39:00
--  
谢谢老师,帮我代码精简一下。
--  作者:有点蓝
--  发布时间:2020/3/27 13:38:00
--  
去掉判断就可以了
--  作者:江南小镇
--  发布时间:2020/3/28 12:29:00
--  
老师,第二段代码重算时出错。



图片点击可在新窗口打开查看此主题相关图片如下:目录树1.png
图片点击可在新窗口打开查看
 For i As Integer = 0 To Tables("窗口1_Table1").Count - 1
    Tables("窗口1_Table1").Rows(i)("第一列") = i + 101
Next
With DataTables("窗口1_Table1")
    .DataCols("第一列").RaiseDataColChanged(.DataRows(0))
End With


For i As Integer = 0 To Tables("窗口1_Table2").Count - 1
    Tables("窗口1_Table2").Rows(i)("第一列") = Tables("窗口1_Table1").Current("第一列")
    Tables("窗口1_Table2").Rows(i)("第二列") = Tables("窗口1_Table2").Rows(i)("第一列") + format(i+1, "00")   
Next
With DataTables("窗口1_Table2")
    .DataCols("第二列").RaiseDataColChanged(.DataRows(0))
End With
--  作者:有点蓝
--  发布时间:2020/3/28 13:52:00
--  
什么错误?没看懂
--  作者:江南小镇
--  发布时间:2020/3/28 14:02:00
--  
老师,窗口表2的第一列通过重算按钮没有累计1

For i As Integer = 0 To Tables("窗口1_Table1").Count - 1
    Tables("窗口1_Table1").Rows(i)("第一列") = i + 101
Next
With DataTables("窗口1_Table1")
    .DataCols("第一列").RaiseDataColChanged(.DataRows(0))
End With

这段代码把第一段代码生成的数据(第一列的)重置了。
For i As Integer = 0 To Tables("窗口1_Table2").Count - 1
    Tables("窗口1_Table2").Rows(i)("第一列") = Tables("窗口1_Table1").Current("第一列")
    Tables("窗口1_Table2").Rows(i)("第二列") = Tables("窗口1_Table2").Rows(i)("第一列") + format(i+1, "00")   
Next
With DataTables("窗口1_Table2")
    .DataCols("第二列").RaiseDataColChanged(.DataRows(0))
End With


--  作者:有点蓝
--  发布时间:2020/3/28 15:50:00
--  
Tables("窗口1_Table2").Rows(i)("第一列") = Tables("窗口1_Table1").Rows(i)("第一列")
--  作者:江南小镇
--  发布时间:2020/3/28 16:58:00
--  
老师,下面代码怎样修改

Tables("窗口1_Table2").Rows(i)("第一列") = Tables("窗口1_Table1").Rows(i)("第一列")

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:目录树.rar
 
--  作者:有点蓝
--  发布时间:2020/3/28 17:08:00
--  
For i As Integer = 0 To Tables("窗口1_Table1").rows.Count - 1
    Tables("窗口1_Table1").Rows(i)("第一列") = i + 101
Next

With DataTables("窗口1_Table1")
    If .DataRows.count > 0
        .DataCols("第一列").RaiseDataColChanged(.DataRows(0))
    End If
End With


For i As Integer = 0 To Tables("窗口1_Table2").rows.Count - 1
    Tables("窗口1_Table2").Rows(i)("第一列") = i + 101
    Tables("窗口1_Table2").Rows(i)("第二列") = Tables("窗口1_Table2").Rows(i)("第一列") + format(i+1, "00")
Next
With DataTables("窗口1_Table2")
    If .DataRows.count > 0
        .DataCols("第二列").RaiseDataColChanged(.DataRows(0))
    End If
End With