以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 用行号遍历数据表 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=47653) |
-- 作者:发财 -- 发布时间:2014/3/14 11:01:00 -- 用行号遍历数据表 For...Next语句经常用于遍历数组或集合,例如下面的代码,定义一个数组,然后给每个数组元素设置值: For Index As Integer = 0 To MAX("行号").Length - 1Values(Index) = Index * 2 Next 如果数据表有20行,就利用数据表的行号进行遍历数据表 |
-- 作者:狐狸爸爸 -- 发布时间:2014/3/14 11:06:00 -- http://www.foxtable.com/help/topics/1438.htm http://www.foxtable.com/help/topics/0419.htm
|
-- 作者:发财 -- 发布时间:2014/3/14 14:42:00 -- For Each r As Row In Tables("收购").Rows Next |
-- 作者:Bin -- 发布时间:2014/3/14 14:50:00 -- 你想实现什么效果? 你的代码你1楼的描述,怎么对不上号? 看的有点迷茫. |
-- 作者:发财 -- 发布时间:2014/3/14 15:18:00 -- Dim kjmc() As String \'控件名称 Dim kjmcjh As String = "猪主姓名,重量,单价" \'控件名称集合 kjmc = kjmcjh.Split(",") For Each r As Row In Tables("收购").Rows For i As Integer=0 To kjmc.Length-1 If e.Form.Controls(kjmc(i)).value Is Nothing Then MessageBox.Show(kjmc(i) & "不能为空,请检查") r("修改") = False e.Form.Controls(kjmc(i)).Select Return End If Next Next dr = DataTables("收购").AddNew() dr("日期") = vars("adate") With Tables("收购") .Position = .Rows.Count - 1 End With e.Form.Controls("猪主姓名").Select() |
-- 作者:Bin -- 发布时间:2014/3/14 15:19:00 -- 能不能说一下你出现的问题呢? 最好能上个例子. |
-- 作者:发财 -- 发布时间:2014/3/14 15:19:00 -- 上述代码,当有两空行时,它不会检查到,仍增加一行,只有在当行时,才检查到"猪主姓名,重量,单价" 的空值。 |
-- 作者:Bin -- 发布时间:2014/3/14 15:22:00 -- 因为你找到一行就Return了.所以不会继续执行 |
-- 作者:发财 -- 发布时间:2014/3/14 15:24:00 -- 我就是要找一行,输入一行,但它只会找最后一行。 |
-- 作者:Bin -- 发布时间:2014/3/14 15:27:00 -- 呵呵,不行的. 只能一个个来. |