以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  新手求教  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=1274)

--  作者:liqun
--  发布时间:2008/11/29 16:43:00
--  新手求教
看了几天帮助还是晕乎乎的,下面一个很菜的问题如何解决,请大虾们赐教,谢谢!

Dim drs As List(Of DataRow)
drs = DataTables("表A").Select("","第一列") \'假设此时的集合为A,B,C
\'现在想将A,B,C写入到表B第一到第三行中
For Each dr As Datarow In drs
    \'这里的代码怎么写
Next

--  作者:gdtgl
--  发布时间:2008/11/29 18:05:00
--  
With Tables("表A")
For n As integer = 0 To .Rows.Count - 1      
    Tables("表B").Rows(0)(n) = .rows(n)("第一列")
next
end with

--  作者:liqun
--  发布时间:2008/11/29 18:23:00
--  
谢谢!
不过你的解答和我的要求有很大的差距。
--  作者:gdtgl
--  发布时间:2008/11/29 18:28:00
--  

呵,看错了,是看成写到第1到第3列了。


--  作者:gdtgl
--  发布时间:2008/11/29 18:31:00
--  
With Tables("表A")
For n As integer = 0 To .Rows.Count - 1      
    Tables("表B").Rows(n)(0) = .rows(n)("第一列")
next
end with 

--  作者:liqun
--  发布时间:2008/11/29 18:46:00
--  
谢谢你的热心帮助!
可能我说的不是很清楚,其实我并不是想将表A第一列中所有数据都写入到表B第一列中,一楼代码Select还有条件,所以说我只想将符合条件的数据写入到表B表第一列中。

下面的图能说明问题,Output返回值就是要写入表B的数据。


图片点击可在新窗口打开查看此主题相关图片如下:请教.bmp
图片点击可在新窗口打开查看

--  作者:gdtgl
--  发布时间:2008/11/29 19:05:00
--  这是以前的至嘉DBtools升级版吗?
Dim drs As List(Of DataRow)
drs = DataTables("表A").Select("[第二列] =\'d\'","第一列")
For Each dr As Datarow In drs
For n As integer = 0 To drs.Count - 1      
    Tables("表B").Rows(n)(0) = Tables("表A").rows(n)("第一列")
next
Next

--  作者:gdtgl
--  发布时间:2008/11/29 19:20:00
--  
上面的应写错(还要修改) 或用数组:


Dim Names As New List(Of String)
Dim suzhu() As String \'定义数组
Dim bfrows As List(Of Datarow)
bfrows = DataTables("表A").Select("[第二列] =\'a\'","第一列")
for each bfrow as datarow in bfrows
  Names.Add(bfrow("第一列"))
next
suzhu = Names.ToArray()
For n As integer = 0 To suzhu.Length - 1      
    Tables("表B").Rows(n)(0) = suzhu(n)
next

--  作者:gdtgl
--  发布时间:2008/11/29 19:24:00
--  
或者参考下这个,虽是报表,但转为表也1样的。

http://www.foxtable.com/dispbbs.asp?boardid=2&Id=1233&page=2
--  作者:liqun
--  发布时间:2008/11/29 19:26:00
--  
谢谢!楼上的可以了。

这么麻烦啊,看来我是学不会了。