[算表]如何增快excel中巨集的演算速度

作者: Anfernee0907 (從心開始)   2014-12-01 20:45:02
軟體:excel
版本:2013
想請教版上的高手
我目前有一個檔案,因為檔案數據太大
目前是選擇錄製巨集的方式來進行
原始還未錄製巨集的檔案資料如下
https://drive.google.com/file/d/0B3RPOpJhO8T3Ylp3T2FVSEZhcDg/view?usp=sharing
而經錄製巨集後的檔案資料如下
https://drive.google.com/file/d/0B3RPOpJhO8T3QlFyM2FnX2haeGM/view?usp=sharing
我的做法是
先把第一欄與第一列非數據內容的部分都刪除,只留下純數據
然後把雙數行的2筆數據部份複製到單數行的第10筆數據之後(每列有12筆)
然後利用單數行與雙數行的篩選機制只留下單數行的數據
然後計算單數行每一欄的總平均數
最後將30個SHEET的總平均數數據整理到新的SHEET裡
而我錄製巨集的方式為
(1)先把第一欄與第一列刪除
(2)複製雙數行的A與B儲存格內容到單數行的K及L欄儲存格裡
(3)在M欄的單行與雙行設定0.1然後篩選只留下單數行的A~L欄數據
(4)將所有單數行的A~L欄數據區域選擇後複製到檔案的其他空白地方
(5)使用函數AVERAGE計算單行A~L的各欄平均數
(6)利用1-5步驟的錄製巨集方式重複到其他29個SHEET裡
(7)將30個SHEET的各欄平均數整理排序到新的SHEET裡
因為使用錄製巨集
所以檔案在跑時進行速度有些緩慢
不知道有其他可以改善的方式嗎
希望版上的高手可以撥冗解答
感謝
作者: soyoso (我是耀宗)   2014-12-01 21:14:00
(1)可做可不做 (2)想到的是留第一列用篩選D欄空白接著用SpecialCells將篩選到的其他欄,讀入陣列內^的資料copy到其他欄刪除篩選的資料列,再將陣列內的資料一次貼到L2就是一口氣將工作表內的第11,12筆資料一次接到第10筆後面http://goo.gl/grmA3z 試試,最後寫的和上面回文有些不同
作者: Anfernee0907 (從心開始)   2014-12-01 23:48:00
感謝,我試看看。問題已解決,感謝soyoso這個巨集是無論列位多少都可以彙整然後求出平均值嗎
作者: soyoso (我是耀宗)   2014-12-02 00:07:00
只要符合這個工作表內的格式的話,列數是可以擴充的

Links booklink

Contact Us: admin [ a t ] ucptt.com