Office中国论坛/Access中国论坛

标题: 请问这四个求和程序如何合并为一个程序,并且提升运行速度,谢谢! [打印本页]

作者: 荒烟平楚    时间: 2012-2-22 20:31
标题: 请问这四个求和程序如何合并为一个程序,并且提升运行速度,谢谢!
    表格里面有四个程序:“订单总数”、“计划收货总数”、“实绩收货总数”、“是否达成”,作用是:将“物控计划表”中,每天相应单元格的数值求和放在表格后面相应列中。现在每个程序是分开分别计算的,运行很慢,想改进为:

1、将四个程序合并为一个程序,并且提升反应速度,如果在E4: DX65536任何一个单元格编辑数值,那么程序自动重新求和(就像用函数求和一样,VBA应该是用Change 事件来触发吧,不再用按钮来触发)

2、末行号以D列的”物料编号”为准,即末行号等于D列有内容的最后一行的行号。末行号不再设置为5000

3、EC 列统计“达成累计(次)” 即:从E列到DX列总共出现了多少个“是”,将出现次数放在EC列单元格中,ED列统计出现多少个“否”,把这个VBA代码写在上面那个合并的程序里面,详见附件,谢谢!
作者: pureshadow    时间: 2012-2-23 09:20
改成事件,运行速度会更慢的。
最末一行的设置是cells(rows.count,1).end(xlup).row
计算出现多少个是和否,直接用函数countif还快些呢=countif(e:dx,"是")
作者: 荒烟平楚    时间: 2012-2-23 12:23
谢谢您的指教,请问,除了用函数来统计的话,没有别的办法了吗?
作者: pureshadow    时间: 2012-2-24 09:10
统计可以用数据透视表、函数、合并计算、数据分析、代码……方法很多,只是觉得,这里的一个出现是否,用函数最为方便快捷




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3