Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 1824|回复: 5

[已解决]两种计算方法结果为什么不相等

[复制链接]
发表于 2012-5-9 00:09 | 显示全部楼层 |阅读模式
用5月8日讲的数组计算金额和SUMIF计算的金额不等,哪位老师看一下,是什么原因?

Book1.rar (73.4 KB, 下载次数: 42)
发表于 2012-5-9 07:34 | 显示全部楼层
D15=72.2     <>11.2*12.4
..................................
D列 大概70-80% 都是这种情况.
回复

使用道具 举报

发表于 2012-5-9 07:37 | 显示全部楼层
回复

使用道具 举报

发表于 2012-5-9 09:58 | 显示全部楼层
本帖最后由 从从容容 于 2012-5-9 10:00 编辑

动态好像没有用到。还有D列的数据有错误。

456.rar

243.72 KB, 下载次数: 13

回复

使用道具 举报

 楼主| 发表于 2012-5-9 12:46 | 显示全部楼层
从从容容 发表于 2012-5-9 09:58
动态好像没有用到。还有D列的数据有错误。

运行出错。                              
QQ截图.jpg
回复

使用道具 举报

发表于 2012-5-9 15:03 | 显示全部楼层    本楼为最佳答案   
错误有两个
  1、数据源不正确 单元格中    数量X单价<>金额。
  2、代码错误,你的代码只算出最后一个A 的金额,以下是修改后的代码。
   Sub 二维动态数组()
Dim arr(), k, x, j
k = Application.CountIf(Sheets("sheet2").[a:a], "A")
ReDim arr(1 To k, 1 To 4)
For x = 1 To 10000
   If Cells(x, 1) = "A" Then
     j = j + 1
     arr(j, 1) = "A"
     arr(j, 2) = Cells(x, 2)
     arr(j, 3) = Cells(x, 3)
     arr(j, 4) = arr(j, 2) * arr(j, 3)
   
   End If
Next x
  Range("H2").Value = Application.Sum(Application.Index(arr, , 4))
End Sub
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-5 22:03 , Processed in 0.250091 second(s), 12 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表