Foxtable(狐表)用户栏目专家坐堂 → 为何会失效


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

主题:为何会失效

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


加好友 发短信
等级:四尾狐 帖子:989 积分:8833 威望:0 精华:0 注册:2016/4/10 14:33:00
为何会失效  发帖心情 Post By:2020/5/19 21:48:00 [只看该作者]

Tables("交易明细").StopRedraw()
For Each file As String In filesys .GetFiles("E:\油卡文件测试\交易明细")
    If file.EndsWith(".xls") OrElse file.EndsWith(".xlsx") Then
        Dim  Book As New XLS.Book(file)
        Dim  Sheet As XLS.Sheet = Book.Sheets(0)
        '注意以下数组中列名称的顺序,必须和Excel表中的列顺序一致
        Dim nms() As  String = {"卡号","持卡人","交易时间","交易类型","金额","油品","数量","单价","奖励积分","余额","地点"}
        '注意下面的循环变量从1开始,而不是从0开始,因为Excel表的第一行是标题
        For n As Integer = 4 To Sheet.Rows.Count -1
            If Sheet(n,0).Value = "小计" Then Continue For
            If Sheet(n,0).Value = "总计" Then Continue For
            If Sheet(n,2).Value = "无" Then Continue For
            If Sheet(n,3).Value = "圈存" Then Continue For
            Dim bh0 As String = sheet(n,0).Text 
            Dim bh1 As String = sheet(n,1).Text  
            Dim bh2 As String = sheet(n,2).Text
            Dim bh3 As String = sheet(n,3).Text
            Dim bh4 As String = sheet(n,4).Text
            Dim bh5 As String = sheet(n,5).Text
            Dim bh6 As String = sheet(n,6).Text
            Dim bh7 As String = sheet(n,7).Text
            Dim bh8 As String = sheet(n,8).Text
            Dim bh9 As String = sheet(n,9).Text
            Dim bh10 As String = sheet(n,10).Text
            If DataTables("交易明细").Find("卡号 = '" & bh0 & "' And 持卡人 = '" & bh1 & "' And 交易时间 = '" & bh2 & "' And 交易类型 = '" & bh3 & "' And 金额 = '" & bh4 & "' And 油品 = '" & bh5 & "' And 数量 = '" & bh6 & "' And 单价 = '" & bh7 & "' And 奖励积分 = '" & bh8 & "' And 余额 = '" & bh9 & "' And 地点 = '" & bh10 & "'") Is Nothing Then  '如果不存在同编号的订单
                Dim r As  Row = Tables("交易明细").AddNew()
                For  m As  Integer = 0 To nms.Length - 1
                    r(nms(m)) = Sheet(n,m).Value
                Next
            End If
        Next
        Tables("交易明细").ResumeRedraw()
    End If
Next

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110790 积分:563882 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/5/19 22:26:00 [只看该作者]

如果是数值列,去掉表达式里的单引号。
另外可能数据有空格:Dim bh0 As String = sheet(n,0).Text.trim()

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


加好友 发短信
等级:四尾狐 帖子:989 积分:8833 威望:0 精华:0 注册:2016/4/10 14:33:00
  发帖心情 Post By:2020/5/19 23:53:00 [只看该作者]

Dim bh0 As String = sheet(n,0).Text.trim()
试了一下没用
如果是数值列,去掉表达式里的单引号。
这个是指哪个列?
对了老师是不是因为双精度小数的原因?
比如单价1.26这样的是用双精度小数吧?

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110790 积分:563882 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/5/20 8:39:00 [只看该作者]

比如: And 数量 = " & bh6 & " And 单价 

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


加好友 发短信
等级:四尾狐 帖子:989 积分:8833 威望:0 精华:0 注册:2016/4/10 14:33:00
  发帖心情 Post By:2020/5/20 9:27:00 [只看该作者]

也没用
[此贴子已经被作者于2020/5/20 9:51:15编辑过]

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


加好友 发短信
等级:四尾狐 帖子:989 积分:8833 威望:0 精华:0 注册:2016/4/10 14:33:00
  发帖心情 Post By:2020/5/20 9:52:00 [只看该作者]

是不是For n As Integer = 4 To Sheet.Rows.Count -1
 For  m As  Integer = 0 To nms.Length - 1
的原因?

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


加好友 发短信
等级:四尾狐 帖子:989 积分:8833 威望:0 精华:0 注册:2016/4/10 14:33:00
  发帖心情 Post By:2020/5/20 9:54:00 [只看该作者]

或者是不是Dim bh9 As String = sheet(n,9).Text '余额
这个的原因?
不能用String 或者Text?

 回到顶部
帅哥,在线噢!
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


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

请上传实例说明

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


加好友 发短信
等级:四尾狐 帖子:989 积分:8833 威望:0 精华:0 注册:2016/4/10 14:33:00
  发帖心情 Post By:2020/5/20 10:16:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:问题实例.rar

就这个

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


加好友 发短信
等级:四尾狐 帖子:989 积分:8833 威望:0 精华:0 注册:2016/4/10 14:33:00
  发帖心情 Post By:2020/5/20 12:18:00 [只看该作者]

就是点一次还行,点击第二次又重复执行,哪路大神能帮我破解一下?

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