excelvba限制使用時間 如何優(yōu)化EXCEL vba代碼?
如何優(yōu)化EXCEL vba代碼?怎么優(yōu)化系統(tǒng)EXCELvba代碼?下面談一談個人的看法,若有不當之處,熱情斧正。1、解決問題的思路、算法的問題;選用適合的工具解決問題。比如,程序要進行排序。排序有多種
如何優(yōu)化EXCEL vba代碼?
怎么優(yōu)化系統(tǒng)EXCELvba代碼?
下面談一談個人的看法,若有不當之處,熱情斧正。
1、解決問題的思路、算法的問題;選用適合的工具解決問題。
比如,程序要進行排序。
排序有多種,每種排序的效率不盡相同,區(qū)分的數(shù)據(jù)范圍和條件也是一樣的。
參照數(shù)據(jù)的換算情況來你選擇適合的排序。
下面共有是工作表排序、冒泡排序、快速排序、計數(shù)法排序處理5000條數(shù)據(jù)的速度都很,很顯然,冒泡排序需要0.68秒,是最慢的。
當一次性處理5萬條數(shù)據(jù)的時候,冒泡排序看來是最不很給力的。
上面幾種排序中,工作表排序算法速度是太快的,并且可以不將數(shù)組中的數(shù)據(jù)傳達消息到工作表,排序后再訊息傳遞回數(shù)組中。
在實際中,當數(shù)組的元素達到10000個時,選擇類型用冒泡排序效率就非常低了。
快速排序和計數(shù)排序只可以參照于integer和way數(shù)據(jù)類型的排序,速度都相當快。
又如,字典在達到10萬數(shù)據(jù)的時候,速度就慢了,此時執(zhí)著于用字典全面處理就越發(fā)有心無力了。你選擇用SQL方法是還好的選擇。
當要去處理100萬數(shù)據(jù)的時候,用Excel全面處理就不比較好了,選用數(shù)據(jù)庫是比較比較合適的。
代碼、軟件也是工具,選用適合的就好。
最合適的工具、方法幫忙解決比較好的問題應(yīng)該是最好的優(yōu)化。
2、從操作單元格進階為操作數(shù)組和字典。
下面兩個代碼四個圖案填充1-10000到單元格A1:A10000.
Sub單元格()
Dimiamp
t1Time
Fori1need10000
Cells(i,1)i
Nexti
t2Time
共花去ampDateDiff(s
有沒有,一個軟件,能對Word、ppt文檔設(shè)置閱讀時間限制,或者閱讀次數(shù)。超過次數(shù)自定鎖定?
微軟的OFFICE本身就有這個二次開發(fā)性
需要會一點點VBA知識即可解決