以文本方式查看主题
- Foxtable(狐表) (http://foxtable.com/bbs/index.asp)
-- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2)
---- [求助]找出为空值的列 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=118189)
|
-- 作者:81538475
-- 发布时间:2018/4/26 16:55:00
-- [求助]找出为空值的列
这样好像找不出来有空值的列,只能找到表里面是否有空值。 Dim t As Table = Tables("XMZB.XMFP") Dim r As Integer = t.FindRow("[第一列] =\'\' ")
|
-- 作者:有点甜
-- 发布时间:2018/4/26 16:57:00
--
你要找空行?
Dim r As Integer = t.FindRow("[第一列] is null ")
|
-- 作者:81538475
-- 发布时间:2018/4/26 16:59:00
--
找出空行的行号。上面的命令好像实现不了。找出所有空行的行号。
[此贴子已经被作者于2018/4/26 17:00:17编辑过]
|
-- 作者:有点甜
-- 发布时间:2018/4/26 17:00:00
--
参考2楼
|
-- 作者:81538475
-- 发布时间:2018/4/26 17:06:00
--
比如我这里有2行是空的,但是他只返回了第一个。 Dim t As Table = Tables("XMZB.XMFP") Dim r As Integer = t.FindRow("[第二列] is null ") messagebox.Show("x=" & r)
结果是 x=1
此主题相关图片如下:1.png

感觉要用到for each 或者是,一个找出集合的命令。。但是有点不知道如何做
[此贴子已经被作者于2018/4/26 17:09:46编辑过]
|
-- 作者:有点甜
-- 发布时间:2018/4/26 17:09:00
--
Dim t As Table = Tables("表A") For Each r As Row In t.rows If r.IsNull("第一列") Then msgbox(r.index) End If Next
|
-- 作者:81538475
-- 发布时间:2018/4/26 17:46:00
--
此主题相关图片如下:3 副本.jpg

此主题相关图片如下:2 副本.jpg
 很奇怪,选择不同的单元格出来的index不同。。能够是前面的行号吗?
此主题相关图片如下:1 副本.jpg

Dim t As Table = Tables("XMZB.XMFP")
For Each tr As Row In t.Rows Dim yl As Integer= t.Cols("第二列").Index + 1 If tr.IsNull("第二列") Then Dim xl1 As Integer = tr.Index+1 Output.Show("xl1=" & xl1)
End If Next
[此贴子已经被作者于2018/4/26 17:46:50编辑过]
|
-- 作者:有点甜
-- 发布时间:2018/4/26 18:09:00
--
Dim t As Table = Tables("XMZB.XMFP")
For i As Integer = 0 To t.Rows.count-1 t.position = i Dim tr As Row = t.Rows(i) If tr.IsNull("第二列") Then Dim xl1 As Integer = tr.Index+1 Output.Show("xl1=" & xl1) End If Next
|