[算表]如何增快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