Foxtable(狐表)用户栏目专家坐堂 → [求助]获取列标题数组替换


  共有2906人关注过本帖树形打印复制链接

主题:[求助]获取列标题数组替换

帅哥哟,离线,有人找我吗?
sunion0769
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:99 积分:1155 威望:0 精华:0 注册:2012/9/30 10:20:00
[求助]获取列标题数组替换  发帖心情 Post By:2020/12/12 13:16:00 [只看该作者]

请问各位老师,如何把{"第一列","第二列",“第四列”,“第五列”} 这个部分用代码替换成“表D”的列标题

Dim dlg As New OpenFileDialog
dlg.MultiSelect = True
dlg.Filter= "所有文件|*.*|Excel2003文件|*.xls|Excel2007文件|*.xlsx" '设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then '如果用户单击了确定按钮
    Dim fs As String = String.Join(",",dlg.FileNames)
    MessageBox.Show("你选择的是:" & fs,"提示")
    If MessageBox.Show("是否合并?","请确 认!",MessageBoxButtons.OKCancel,MessageBoxIcon.Question) = DialogResult.OK Then
        DataTables("表D").StopRedraw
        Dim App As New MSExcel.Application
        Dim Wb As MSExcel.WorkBook
        Dim Ws As MSExcel.WorkSheet
        
            Dim cs() As String = {"第一列","第二列",“第四列”,“第五列”}  ‘------------------------如何把{"第一列","第二列",“第四列”,“第五列”} 这个部分用代码替换成“表D”的列标题
        
        try
            For Each file As String In dlg.FileNames
                Wb  = App.WorkBooks.Open(file)
                Ws  = Wb.WorkSheets(1)   'sheet2标签
                Dim Rg As MSExcel.Range = Ws.UsedRange
                Dim ary = rg.value
                For n As Integer = 2 To rg.Rows.Count
                    Dim ro As Row = Tables("表D").AddNew
                    For i As Integer = 0 To cs.length - 1
                        ro(cs(i))= ary(n,i+1)
                    Next
                Next
            Next
        catch ex As exception
            Output.Show(ex.message)
            App.quit
            DataTables("表D").ResumeRedraw
        End try
        App.quit
        DataTables("表D").ResumeRedraw
    End If
End If
[此贴子已经被作者于2020/12/12 13:16:20编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:109505 积分:557193 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/12/12 13:41:00 [只看该作者]

如果是表D的全部列,没有必要定义数组了,直接遍历列

                For n As Integer = 2 To rg.Rows.Count
                    Dim ro As Row = Tables("表D").AddNew
                    For i As Integer = 0 To Tables("表D").cols.count - 1
                        ro(i)= ary(n,i+1)
                    Next
                Next

 回到顶部