以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]再发贴请教一个关与两表之间列的问题。  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=48280)

--  作者:ido
--  发布时间:2014/3/26 15:47:00
--  [求助]再发贴请教一个关与两表之间列的问题。
表A 列名: 第一列,第二列,第三列,第四列,第五列,第六列,第七列,第八列, 第九列,第十列 
表B 列名:  第一列,第二列,第三列,第四列,第五列,第六列,第七列,第八列


代码要如何实现,把表A,多出的(第九,十列)列删除。
If Tables("表A").cols.Count > Tables("表B").cols.Count Then
Dim i As Integer = Tables("表A").cols.Count - Tables("表B").cols.Count
For k As Integer = 1 To i
Tables("表A").Cols.Remove(Tables("表A").cols(Tables("表B").cols.Count + k).Name)
Next
End If
PS:不能用隐藏。只能用删除。~~~~拜托各位大侠~~~~

代码是错误的。表A删除十列后会变化的。~~帮改改
[此贴子已经被作者于2014-3-26 16:03:35编辑过]

--  作者:Bin
--  发布时间:2014/3/26 16:13:00
--  
If Tables("表A").cols.Count > Tables("表B").cols.Count Then
   for each c as col in Tables("表A").cols
       if Tables("表B").cols.Contains(c.name)=false then
            Tables("表A").Cols.Remove(c.name)
       end if
   next
End If

--  作者:ido
--  发布时间:2014/3/26 16:31:00
--  
感谢~~~~
[此贴子已经被作者于2014-3-26 16:30:47编辑过]