以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  第二行开始取不到值  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=94854)

--  作者:jinzhengbe
--  发布时间:2017/1/4 9:18:00
--  第二行开始取不到值

如何根据单元格内容自动添加行   Post By:2016/11/30 10:41:00 [只看该作者]

场景:

 

表a  有 3列

 

a列                       b列                                c列

 

衣服  裤子  鞋子      3.2.1                            aa

 

上衣   帽子             1.2                              bb

 

 

如果 a列的数据 存在空格数自动添加行

如果只有 不存在空格 就不添加

 

 

例如(衣服 裤子 鞋子)就添加三行 如下

       衣服                3              aa

       裤子                2              aa

       鞋子                1              aa

 

例如(上衣  帽子 )就添加2行 如下

       上衣                1              bb

       帽子                2              bb 

 

 
现在的问题是


例如(上衣  帽子 )就添加2行 如下

       上衣                1              bb

       帽子                2              这个值不显示(只有第一个被添加的行的值会显示 )

 

正常是需要  帽子那行也要从 之前行 复制bb这个值

 

 


用的是下面的代码

有黄色代码的部分 

 


 Select Case e.DataCol.Name
    Case "第一列","第二列"
        If e.DataRow.IsNull("第一列") = False And e.DataRow.IsNull("第二列") = False  Then
            Dim arr1() As String = e.DataRow("第一列") .split(" ")
            Dim arr2() As String = e.DataRow("第二列") .split(".")
            If arr1.Length <= arr2.Length And arr1.Length > 1 Then
                Dim dr As DataRow
                SystemReady = False
                e.DataRow("第一列") = arr1(0)
                e.DataRow("第二列") = arr2(0)
                For i As Integer = 1 To arr1.Length -1
                    dr = e.DataTable.AddNew()
                    dr("第一列") = arr1(i)
                    dr("第二列") = arr2(i)
                    dr("第三列") = e.DataRow("第三列")
                Next
                SystemReady = True
            End If
        End If
End Select

 

从被添加的 第二行开始  第三列 不能取到相应的值。 请各位指点


--  作者:有点色
--  发布时间:2017/1/4 9:48:00
--  

 不可能,代码没问题,你第三列肯定是空值导致的。

 

 加入下面代码,看弹出什么

 

 msgbox(e.DataRow("第三列"))


--  作者:jinzhengbe
--  发布时间:2017/1/4 9:58:00
--  

例如(衣服 裤子 鞋子)就添加三行 如下

       衣服                3              aa

       裤子                2             

       鞋子                1             

 

例如(上衣  帽子 )就添加2行 如下

       上衣                1              bb

       帽子                2              

 

如图  绿色部分娶不到值 

 

第一行都能取到值而且正确


--  作者:有点色
--  发布时间:2017/1/4 10:00:00
--  

认认真真看2楼,不可能。