Excel精英培训网

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

[已解决]求助!关于类似于用countif函数的vba用法

[复制链接]
发表于 2011-10-10 15:27 | 显示全部楼层 |阅读模式
求助内容见附件,请高手指点!
最佳答案
2011-10-10 16:10
楼上公式和楼主公式并非等价的。
根据猜测的题意,我觉得楼上的公式比楼主的更贴切。

另外,楼主说到VBA,在下有点参考意见:
1. 可以直接采用Evaluate求楼上公式的值,并返回给相应单元格。
2. 也可以采用字典来累计。

countif关联用法求助.zip

7.71 KB, 下载次数: 17

发表于 2011-10-10 15:57 | 显示全部楼层
回复

使用道具 举报

发表于 2011-10-10 16:10 | 显示全部楼层    本楼为最佳答案   
楼上公式和楼主公式并非等价的。
根据猜测的题意,我觉得楼上的公式比楼主的更贴切。

另外,楼主说到VBA,在下有点参考意见:
1. 可以直接采用Evaluate求楼上公式的值,并返回给相应单元格。
2. 也可以采用字典来累计。
回复

使用道具 举报

 楼主| 发表于 2011-10-10 16:24 | 显示全部楼层
回复 Zipall 的帖子

多谢你的公式,有没有vba的方法啊
回复

使用道具 举报

 楼主| 发表于 2011-10-10 16:25 | 显示全部楼层
回复 Benol 的帖子

请问字典累计的方法怎么弄了,能帮忙写个vba代码嘛
回复

使用道具 举报

 楼主| 发表于 2011-10-10 16:54 | 显示全部楼层
回复 Benol 的帖子

Sub insert_row()
Dim i%
    For i = 2 To 22
        Cells(i, 3) = Evaluate("SUMPRODUCT((A$2:A$22=A2)*(B$2:B$22=B2))")
    Next
End Sub
经验证不对,只显示a2,b2对应的结果3
Sub insert_row()
Dim i%
    For i = 2 To 22
        Cells(i, 3) = Application.SumProduct(Range("A2:A22") = Cells(i, 1)) * (Range("B2:B22") = Cells(i, 2))
    Next
End Sub
经验证是报错,报的什么由于我电脑上是韩文版的,看不到
回复

使用道具 举报

发表于 2011-10-10 17:05 | 显示全部楼层
今天陪客户。没时间写。如果明天你还没有得到答案,请短消息呼我。
回复

使用道具 举报

 楼主| 发表于 2011-10-10 17:13 | 显示全部楼层
回复 Benol 的帖子

你不是知道不能解惑,是多么蛋疼的事!我要申请两小时解决问题那个
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-6-4 06:45 , Processed in 0.307204 second(s), 9 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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