There are questions remain, We'll search for the answers together. But one thing we known for sure,the future is not set!

【原创文章】Excel中计算超大量数据(求和、求差等)的方法

数据分析 百蔬君 8529℃ 已收录 0评论

excel是个好工具,一般来说,我们求差求和比较多,求差值就是在一个空列的第一行,输入你想寻求差值的位置,然后相减就行了。

比如我想求d2和e2的差值,那么我另起一列,选择h2的位置,然后在上面的命令栏中输入“=d2-e2″,点击enter键就可以求得d2和e2的差值了。

如果想求得相同列的差值,那么我们选择h2,然后往下拉就可以获得d3,d4…与e3,e4…的差值,这个是很简单的,也是我们常用的!

这个不是我说的重点,当我们每列的数据是几十万条,那么往下拉求差值的这个方法就不是很现实了,可能往下拉了半个小时还没有拉到底部,这显然是不行的。

excel早想到了这个问题,所以有一个快捷方式。上面点击enter键就可以在h2位置获得d2和e2的差值,我们换一个方法,我们先选择h行,然后再输入”=d2-e2″命令,按住ctrl键,然后再点击enter键,那么我们将获得所有d行与e行的差值并显示在h行。

这样的方法可以满足一定需求,但是也存在一个问题,如果d行和e行的数据没有填满表格,那么与前面d行和e行空白处对应的h行位置将全部显示0,而你如果用h行数据来作图的话,那么尾部将出现很大的一部分空白,这是我们要解决的问题。

这时候我们要启用宏命令大法

打开“视图”,点击最右边的“宏”

弹出宏命令的设置窗口,给宏起一个名字“qiucha”,在“位置”这里选择我们的表,或者当前工作簿

然后点击“创建”,这个就是宏命令的输入窗口

在sub qiucha在vb语言中表示是一个过程,过程是没有返回值的,vb中过程用sub表示,函数用function表示,在过程中我们输入我们的命令

Sub qiucha()
Range("h2:h309982") = Evaluate("=d2:d309982-e2:e309982")
End Sub

这个命令还是很简单的,range表示的是显示结果的位置,evaluate表示计算,计算的内容就是后面括号中的内容,这里我们可以精确的定义我们要计算的那些行的差值,比如这里就是计算d列与e列的第2行到第309982行的每一行的差值,结果显示在h列的第2到309982行。

输入完命令点击上面的绿色三角形运行这个命令就好了,所有的结果将显示在h行相应位置。

其它求和、求平方参照这个方法换换命令就行了

 

转载请注明:百蔬君 » 【原创文章】Excel中计算超大量数据(求和、求差等)的方法

喜欢 (11)or分享 (0)
发表我的评论
取消评论

请证明您不是机器人(^v^):

表情