Foxtable(狐表)用户栏目专家坐堂 → [求助]excel表格导入


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

主题:[求助]excel表格导入

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


加好友 发短信
等级:童狐 帖子:291 积分:2330 威望:0 精华:0 注册:2012/12/26 10:12:00
[求助]excel表格导入  发帖心情 Post By:2013/4/1 15:41:00 [只看该作者]

     我用如下代码导入:
     Dim dlg As New OpenFileDialog
dlg.Filter= "Excel文件|*.xls;*.xlsx"
If dlg.ShowDialog = DialogResult.Ok Then
    'MessageBox.Show("你选择的是:" & dlg.FileName,"提示")
    Dim Book As New XLS.Book(dlg.FileName)
    Dim Sheet As XLS.Sheet = Book.Sheets(0)
    Dim colNames As New List(Of String)
    For i As Integer = 0 To sheet.Cols.Count - 1
        colNames.Add(sheet(0, i).Text)
    Next
   
    Dim dt As DataTable = DataTables("机电设备表")
    For i As Integer = 1 To sheet.Rows.Count - 1
        If dt.Find("序号 = '" & sheet(i, 0).Text & "'") Is Nothing Then
            Dim ndr As DataRow = dt.AddNew
            For j As Integer = 0 To sheet.Cols.Count - 1
                ndr(colNames(j)) = sheet(i, j).Text
            Next
        End If
    Next
End If



      运行后,提示有错误。每一次 只能添加一条记录。
图片点击可在新窗口打开查看此主题相关图片如下:dvfmnnbo)6s`ko5aq1@)x.jpg
图片点击可在新窗口打开查看

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/4/1 15:44:00 [只看该作者]

列名有为空的。所以出现这个情况。

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


加好友 发短信
等级:童狐 帖子:291 积分:2330 威望:0 精华:0 注册:2012/12/26 10:12:00
  发帖心情 Post By:2013/4/2 13:14:00 [只看该作者]

     没有列为空的啊,哪位帮忙解决一下


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/4/2 14:16:00 [只看该作者]

Dim dlg As New OpenFileDialog
dlg.Filter= "Excel文件|*.xls;*.xlsx"
If dlg.ShowDialog = DialogResult.Ok Then
    'MessageBox.Show("你选择的是:" & dlg.FileName,"提示")
    Dim Book As New XLS.Book(dlg.FileName)
    Dim Sheet As XLS.Sheet = Book.Sheets(0)
    Dim colNames As New List(Of String)
    For i As Integer = 0 To sheet.Cols.Count - 1
        If sheet(0, i).Text > "" Then
            colNames.Add(sheet(0, i).Text)
        Else
            messagebox.show("Excel文件的第" & (i+1) & "列的列名为空,要罢工")
            Return
        End If
    Next
    Dim dt As DataTable = DataTables("机电设备表")
    For i As Integer = 1 To sheet.Rows.Count - 1
        If dt.Find("序号 = '" & sheet(i, 0).Text & "'") Is Nothing Then
            Dim ndr As DataRow = dt.AddNew
            For j As Integer = 0 To sheet.Cols.Count - 1
                ndr(colNames(j)) = sheet(i, j).Text
            Next
        End If
    Next
End If

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


加好友 发短信
等级:童狐 帖子:291 积分:2330 威望:0 精华:0 注册:2012/12/26 10:12:00
  发帖心情 Post By:2013/4/2 15:29:00 [只看该作者]

    是不是我的excel模板有问题啊?

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


加好友 发短信
等级:等待验证 帖子:3855 积分:20692 威望:0 精华:5 注册:2012/6/21 14:03:00
  发帖心情 Post By:2013/4/2 15:37:00 [只看该作者]

用户已被锁定

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


加好友 发短信
等级:童狐 帖子:291 积分:2330 威望:0 精华:0 注册:2012/12/26 10:12:00
  发帖心情 Post By:2013/4/2 15:41:00 [只看该作者]

  就是这个模板 ,看看吧

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/4/2 15:42:00 [只看该作者]

以下是引用fengyungongzi在2013-4-2 15:41:00的发言:
  就是这个模板 ,看看吧

在哪? 你没上传到吧!

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


加好友 发短信
等级:童狐 帖子:291 积分:2330 威望:0 精华:0 注册:2012/12/26 10:12:00
  发帖心情 Post By:2013/4/2 15:47:00 [只看该作者]

   看看吧


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


加好友 发短信
等级:童狐 帖子:291 积分:2330 威望:0 精华:0 注册:2012/12/26 10:12:00
  发帖心情 Post By:2013/4/2 15:50:00 [只看该作者]

  晕

 回到顶部
总数 14 1 2 下一页