以文本方式查看主题
- Foxtable(狐表) (http://foxtable.com/bbs/index.asp)
-- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2)
---- 起止页如何自动生成 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=81107)
|
-- 作者:fytea
-- 发布时间:2016/2/18 17:06:00
-- 起止页如何自动生成
已知页数,起止页如何自动生成
此主题相关图片如下:qq图片20160218170439.png

|
-- 作者:大红袍
-- 发布时间:2016/2/18 18:00:00
--
Dim drs As List(Of DataRow) = DataTables("表A").Select("第三列 is not null", "_Sortkey")
For i As Integer = 0 To drs.count - 1 Dim dr As DataRow = drs(i) If i = 0 Then dr("第四列") = "1-" & dr("第三列") ElseIf i = drs.count-1 Then dr("第四列") = dr("第三列") & "-" & dr("第三列") Else dr("第四列") = dr("第三列") & "-" & drs(i+1)("第三列")-1 End If Next
|
-- 作者:fytea
-- 发布时间:2016/2/18 19:50:00
--
大红袍老师,按照你的方法做了这个实例,帮着看看解决一下起始页的问题
此主题相关图片如下:qq图片20160218195317.png

[此贴子已经被作者于2016/2/18 19:53:50编辑过]
|
-- 作者:大红袍
-- 发布时间:2016/2/18 20:15:00
--
单独做一个按钮生成
Dim drs As List(Of DataRow) = DataTables("目录").Select("页号 is not null", "页号")
For i As Integer = 0 To drs.count - 1 Dim dr As DataRow = drs(i) If i = drs.count-1 Then dr("起止页") = val(dr("页号")) & "-" & val(dr("页号")) Else dr("起止页") = val(dr("页号")) & "-" & val(drs(i+1)("页号"))-1 End If Next
|
-- 作者:大红袍
-- 发布时间:2016/2/18 20:24:00
--
如果写到datacolchanged,就这样写
If e.DataCol.name = "页号" Then If e.DataRow.IsNull("页号") Then e.DataRow("起止页") = Nothing Else Dim fdr As DataRow = DataTables("目录").find("页号 < \'" & e.DataRow("页号") & "\'", "页号 desc") If fdr IsNot Nothing fdr("起止页") = val(fdr("页号")) & "-" & val(e.DataRow("页号"))-1 End If fdr = DataTables("目录").find("页号 > \'" & e.DataRow("页号") & "\'", "页号") If fdr Is Nothing Then e.DataRow("起止页") = val(e.DataRow("页号")) & "-" & val(e.DataRow("页号")) Else e.DataRow("起止页") = val(e.DataRow("页号")) & "-" & val(fdr("页号"))-1 End If End If End If
|