作者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/m.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