Foxtable(狐表)用户栏目专家坐堂 → 关于Maxlength的一个问题


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

主题:关于Maxlength的一个问题

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


加好友 发短信
等级:一尾狐 帖子:459 积分:3471 威望:0 精华:0 注册:2011/6/6 11:22:00
  发帖心情 Post By:2019/7/24 7:39:00 [显示全部帖子]

对于导入excel文件,帮助文件中建议合并数据时,要求table中的列必须与excel文件的列名称保持一致,否则会出错,建议通过自己写代码的方式导入excel文件的数据,可以参考下面的代码:

'定义字典,通过字典得到table表中的字段与excel表中列的位置的对应关系
Dim zd As New Dictionary(Of String,Integer)
Dim Book As New XLS.Book("C:\我的待办 .xls")
Dim Sheet As XLS.Sheet = Book.Sheets(0)
For Each cl As Col In Tables("代办明细").Cols
    For c As Integer = 0 To Sheet.Cols.Count -1 '判断列标题
        If Sheet(0, c).Value = cl.Name Then
            zd.Add(cl.Name,c)
        End If
    Next
Next
If zd.ContainsKey("_Identify") = True Then '是否存在
    zd.Remove("_Identify")
End If
Tables("代办明细").StopRedraw()

'注意下面的循环变量从1开始,而不是从0开始,因为Excel表的第一行是标题
For n As Integer = 1 To Sheet.Rows.Count -1
    Dim r As Row = Tables("代办明细").AddNew()
    
    For Each k As String In zd.Keys '轮询所有的键值
        r(k) = Sheet(n,zd(k)).Value
    Next
    
Next
Tables("代办明细").ResumeRedraw()

 回到顶部