Foxtable(狐表)用户栏目专家坐堂 → 定时任务总是出现问题


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

主题:定时任务总是出现问题

帅哥,在线噢!
有点蓝
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110559 积分:562685 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/8/16 10:33:00 [显示全部帖子]

定时任务代码都发上来看看
[此贴子已经被作者于2023/8/16 10:32:59编辑过]

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


加好友 发短信
等级:超级版主 帖子:110559 积分:562685 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/8/16 13:37:00 [显示全部帖子]

导入的数据有多少行?

感觉没有什么特别需要使用vba进行处理的数据,建议使用XLS.Book,内存、资源占用比使用vba少。

4楼提示的错误是索引超界,比如【ary(i, 13)、cs = 30】如果execl文档没有超过13个列,30个列就会出错

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


加好友 发短信
等级:超级版主 帖子:110559 积分:562685 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/8/16 14:17:00 [显示全部帖子]

试试
1、如果同步数据不需要显示文档,去掉App.visible = True
2、关闭并正确退出文档
……
            DataTables(TableN).Save
            Forms("CellKanban").Controls("Label_Time").Text = "最后更新:" & Format(Date.Now, "G")
            'MessageBox.Show("导入成功!", "恭喜!")
Wb.close
        app.quit
        Catch ex As exception
        app.quit
            msgbox(ex.message)
            MessageBox.Show("出现问题的行:" & i & ",对应的列名为:" & cn)
            MessageBox.Show("导入失败!", "恭喜!") 
        End Try
    End If
3、保存后把表格数据清空
DataTables(TableN).save
DataTables(TableN).loadfilter = "1=2"
DataTables(TableN).load

-----------------
如果还不行,考虑Wb.RefreshAll之后把文档另存为没有格式的文档,然后使用XLS.Book读取

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


加好友 发短信
等级:超级版主 帖子:110559 积分:562685 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/8/16 16:43:00 [显示全部帖子]

1、在第2点的catch里调用app.quit,就算是异常肯定可以指定关闭的,之前关闭不了是因为没有把app.quit放到catch里。
2、要想正常退出,必须像我这样用。Wb.close就是用来释放内存的
3、看板需要的数据也是有限的吧,不然每10分钟就导入2W行数据,1H就是18W,一天就是18*24W,内存都爆了。可以加条件把已经过期不需要看的数据清掉

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


加好友 发短信
等级:超级版主 帖子:110559 积分:562685 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/8/17 8:38:00 [显示全部帖子]

2、
wb.saved = True
App.DisplayAlerts = False

回12楼,是的,不管是否异常,都会执行Finally块

 回到顶部