作者sagwow (不是我)
看板Office
标题[问题] 跑macro时,不能同时使用其他算表?
时间Mon Jul 12 22:23:07 2021
(若是和其他不同软体互动之问题 请记得一并填写)
软体: Excel
版本:
因为工作上有个任务要每周做report,而且资料量较大,
我就写了个macro让它自己跑,整个程式跑完约30分钟。
不过我在跑程式的这段时间,excel会整个卡住不能使用,
连没有在跑macro的其他excel档案也不能用。
不确定这样是正常的,还是因为电脑本身不够力才这样?
因为不能同步进行其他工作的话,好像跟自己手动做,花的时间是一样的…QQ
谢谢
--
◢▓◣ ▓▓▓ ╱ ╱
▓ ▓ ▓ ▓ ▓ ▓▓▓ ▓ ▓ ★ ╱
◥▓▓ ▓ ▓ ▓ ▓▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ★
▓ ▓▓▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓
◥▓◤ ▓ ▓ ▓▓▓ ▓ ▓ ▓▓▓ ▓ ▓=] ψ傻瓜
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 220.133.154.177 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Office/M.1626099792.A.148.html
1F:→ newacc: 刚写了一个do while t<60s的程式来测试,发现如果执行VBA 07/12 22:57
2F:→ newacc: 时已经存在的视窗会一起当掉,但是它们都当掉的时候可以再 07/12 22:58
3F:→ newacc: 开新的视窗,而在工作管理员的处理程序清单中会显示成2个 07/12 22:58
4F:→ newacc: 不同的excel程式。原本的当掉,但新开的可以用,不过如果 07/12 22:59
5F:→ newacc: 原本就已经开启的档案,没办法再重开第二次。 07/12 22:59
6F:→ newacc: 另外不确定您对VBA的熟悉程度如何,可以试着优化程式码, 07/12 23:01
7F:→ newacc: 减少不必要的select、避免多层回圈、避免读取储存格内容 07/12 23:01
8F:→ newacc: 尽量把资料一次大量写进变数中,对变数进行运算操作,最後 07/12 23:02
9F:→ newacc: 再写回储存格中,可以用记忆体的用量减少等待读取的时间 07/12 23:03
10F:推 newacc: 刚google到的方法,可以强迫开启一个新的excel程序 07/12 23:27
11F:→ newacc: win key+R,输入excel.exe /x 07/12 23:28
12F:→ newacc: 再由新的这个excel开启含VBA的档案,如此只有这个档案会当 07/12 23:28
13F:→ newacc: 掉,而不会影响其他已经开启的excel档 07/12 23:28
14F:推 a24626296: 哇靠,不能想像要跑30分钟的资料量 07/17 23:17
15F:→ Becque: 程式码优化过後会省下很多时间.. 07/22 11:29