Foxtable(狐表)用户栏目专家坐堂 → 求助


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

主题:求助

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


加好友 发短信
等级:小狐 帖子:316 积分:3064 威望:0 精华:0 注册:2014/3/21 17:22:00
求助  发帖心情 Post By:2016/6/23 10:16:00 [只看该作者]

 Dim dlg As New OpenFileDialog
    dlg.Filter= "Excel文件|*.xls" '设置筛选器
    If dlg.ShowDialog = DialogResult.Ok Then
        Dim Book As New XLS.Book(dlg.FileName)
        Dim Sheet As XLS.Sheet = Book.Sheets(0)
        Tables("货单收款管理_Table1").StopRedraw()
        Dim cnt As Integer
        For n As Integer = 1 To Sheet.Rows.Count -1
            Dim bh As String = sheet(n,0).Text
            Dim dr As DataRow = DataTables("发车明细表").Find("托运单号= '" & bh & "'")
            If dr Is Nothing Then '如果不存在相同单号的运单
                dr=DataTables("发车明细表").AddNew()
            End If
            For m As Integer = 0 To Tables("货单收款管理_Table1").Cols.Count-1
                dr(Tables("货单收款管理_Table1").Cols(m).Name) = Sheet(n,m).Value
             Next
        Next
        Tables("货单收款管理_Table1").ResumeRedraw()
    End If
如果存在相同单号的运单,则覆盖原来的运单,否则新增一个运单.

如果项目中的日期列的值为空,Excel文件中的日期列为空或者有值,覆盖运行时可以正常运行.如果项目中的日期列有日期,而Excel文件中的日期列为空,这样覆盖运行时报错


图片点击可在新窗口打开查看此主题相关图片如下:未命名.bmp
图片点击可在新窗口打开查看
是什么原因?该如何修改代码?请高手赐教,谢谢!

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/6/23 10:18:00 [只看该作者]

For m As Integer = 0 To Tables("货单收款管理_Table1").Cols.Count-1
    If sheet(n, m).Text = "" Then
        dr(Tables("货单收款管理_Table1").Cols(m).Name) = Nothing
    Else
        dr(Tables("货单收款管理_Table1").Cols(m).Name) = Sheet(n,m).Value
    End If
Next


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


加好友 发短信
等级:小狐 帖子:316 积分:3064 威望:0 精华:0 注册:2014/3/21 17:22:00
  发帖心情 Post By:2016/6/23 10:27:00 [只看该作者]

修改了仍然报同样的错误

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/6/23 10:32:00 [只看该作者]

 那就不是代码的问题,你dataColChanged事件应该有问题。

 

 上传实例


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


加好友 发短信
等级:小狐 帖子:316 积分:3064 威望:0 精华:0 注册:2014/3/21 17:22:00
  发帖心情 Post By:2016/6/23 10:33:00 [只看该作者]

为什么只是日期列出现这样的情况?其他列为空没有这种错误提示,是不是字符串不能转换为日期?

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/6/23 10:36:00 [只看该作者]

 看4楼


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


加好友 发短信
等级:小狐 帖子:316 积分:3064 威望:0 精华:0 注册:2014/3/21 17:22:00
  发帖心情 Post By:2016/6/23 11:26:00 [只看该作者]

实例文件太大不能上传,我将dataColChanged事件的代码上传过来帮我看看
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:datacolchanged事件.rar


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/6/23 11:28:00 [只看该作者]

1、删除datacolchanged事件,是否还报错?如果报错,就加入msgbox,定位哪里出问题。

 

2、如果不报错,单独做个例子发上来测试。


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


加好友 发短信
等级:小狐 帖子:316 积分:3064 威望:0 精华:0 注册:2014/3/21 17:22:00
  发帖心情 Post By:2016/6/23 11:38:00 [只看该作者]

删除datacolchanged事件还是报错

If sheet(n, m).Text = "" Then
        dr(Tables("货单收款管理_Table1").Cols(m).Name) = Nothing
运行到这里出现日期列时报错,其他都能运行

[此贴子已经被作者于2016/6/23 11:39:37编辑过]

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/6/23 11:39:00 [只看该作者]

 不可能,上传实例

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