以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  不知道是不是一个小bug  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=23210)

--  作者:lichenwudi
--  发布时间:2012/9/5 18:31:00
--  不知道是不是一个小bug
Dim Customers As List(Of String)
Customers = DataTables("坯布进仓").GetUniqueValues("", "产品")
 
For Each Customer As String In Customers
    Dim r As Row = Tables("表A").Addnew
   r("第六列") = Customer 
Next

填充的时候会一直往上加 即使 先清空某一列数据也没有用
如我筛选出来的数据有 40个 我清除后再次筛选 会填充到 41到80 
1-40是空的
尝试填充列 改到 其他列 也是  比如A1-40 填充完了  改到B列  会从  B41填充到B80
[此贴子已经被作者于2012-9-5 18:32:37编辑过]

--  作者:狐狸爸爸
--  发布时间:2012/9/5 19:54:00
--  

这不是bug来的,如果你想从第一行开始填充:

 

Dim Customers As List(Of String)
Customers = DataTables("坯布进仓").GetUniqueValues("", "产品")
If Tables("表A").Rows.count < Customers.count Then
    Tables("表A").Addnew(Tables("表A").Rows.count - Customers.count)
End If
For i As Integer = 0 To Customers.Count - 1
    Dim r As Row = Tables("表A").Rows(i)
   r("第六列") = Customers(i)
Next


--  作者:lichenwudi
--  发布时间:2012/9/5 23:42:00
--  
谢谢狐爸
--  作者:程兴刚
--  发布时间:2012/9/6 1:30:00
--  

Dim Customers As List(Of String)
Customers = DataTables("坯布进仓").GetUniqueValues("", "产品")

Dim r As Row

For i As Integer = 0 To Customers.Count - 1

      if i = Tables("表A").Rows.count 
            r =Tables("表A") .Addnew

      else

            r = Tables("表A").Rows(i)

      end if
            r("第六列") = Customers(i)

Next

 

其实都一样,只是增加一种解决问题的方法,逻辑不同而已!

[此贴子已经被作者于2012-9-6 1:31:02编辑过]