作者bunby (Bunby)
看板Soft_Job
標題[請益] 如何提升Excel_VBA_Marco的執行效率
時間Sun Sep 10 19:53:52 2017
說明:
小弟目前在某科技廠上班,工作時常會用到巨集(Marco),
有的時候資料量大時,會覺得處理速度不是很快,
但這些巨集都是前輩所寫的,不太好意思去修改,本身也沒有很扎實的程式背景。
問題:
如果仍然使用VBA(不使用python或perl),在不改變現有硬體的情況下,
如果想要自己 去試著重寫Marco 並 試著去提升處理的速度,
請問需要學習怎麼樣的能力?C語言、資結、演算法?
小弟背景:
0. 國立理工研究所畢業
1. 會錄製巨集
2. 知道有些語言使用變數前要先宣告(int、str、)
3. 看得懂一些簡單的迴圈(if、FOR...TO...NEXT)
子程式(Sub...、Call)
#如果有違反版規的地方,請再告知,謝謝。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.224.52.195
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Soft_Job/M.1505044435.A.CE0.html
1F:推 clarencech: 關自動計算,事件,背景..大概就會有很大幫助了 09/10 20:36
2F:→ clarencech: 新版本的還可以多核心去跑, 如果大量讀取cell的 09/10 20:37
3F:→ clarencech: 要用比較有效率方式去存取 09/10 20:38
4F:→ clarencech: 如果有程式背景, 可以去書店翻幾本VBA的書, 再來去學 09/10 20:40
5F:→ clarencech: 進階的, vba寫法後來有不太一樣了 09/10 20:40
6F:→ lachtchlee: 去 Visual_Basic 板問吧 09/10 20:55
7F:推 lunasae: 跟我以前上班的地點很像,前輩回日本了結果是我接手。現 09/10 22:05
8F:→ lunasae: 在上日本網站找資料跟買書自學 09/10 22:05
9F:→ badyy: 不是先用profiler量完之後再外包出去嗎? 09/10 22:15
10F:推 mcmcmc: 上網看開放式課程 09/10 22:56
11F:推 colyward: 宣告合適的變數來降低記憶體使用率 09/10 23:08
12F:推 olycats: 可以先找出有沒有哪一段迴圈或公式特別拖垮速度 09/11 00:18
13F:→ olycats: 資料量大的話可以搭配access使用 09/11 00:19
14F:→ bunby: 謝謝各位的回覆,我再去研究看看 09/11 06:34
16F:→ avonasac0800: n-things-you-can-do-to-speed-up-your-excel-vba-c 09/11 21:32
17F:→ avonasac0800: ode/ 09/11 21:32
18F:→ bunby: 謝謝樓上,請問GOOGLE關鍵字是speed VBA嗎? 09/12 21:13
19F:推 chocopie: excel vba macro + 你想找的關鍵字 09/12 23:12
20F:→ bunby: 謝謝 09/13 10:46
21F:推 xxxxoooo: VBA真是很可怕的東西,有機會的話儘早換掉為妙 09/14 10:09
22F:→ bunby: 為什麼說VBA可怕呢? 09/15 06:11
23F:推 vincent0926: 可以嘗試先關閉螢幕更新,這樣可以加快執行效率 12/25 16:46
24F:→ vincent0926: Application.ScreenUpdating=False結束後改再True 12/25 16:49