Excel精英培训网

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

[已解决]请教高手:excel中sumif函数的vba写法

[复制链接]
发表于 2013-9-9 15:41 | 显示全部楼层 |阅读模式

求助:


自动计算J列的批次余量,

使用函数,公式=SUMIF(J:J,P2,I:I)-SUMIF(M:M,P2,L:L) 可以取得


但在VBA中无法用这个公式,

请高手帮忙,如何用VBA代码写出,谢谢!



求助:入出查询 VBA代码.rar (76.48 KB, 下载次数: 60)
发表于 2013-9-9 15:48 | 显示全部楼层    本楼为最佳答案   
range("a1").Formula = "=SUMIF(J:J,P2,I:I)-SUMIF(M:M,P2,L:L) "

评分

参与人数 1 +1 收起 理由
xinfamily@vip.q + 1

查看全部评分

回复

使用道具 举报

发表于 2013-9-9 15:51 | 显示全部楼层
工作表函数在vba中调用的话,其参数应该按 vba 的方式来写

  1. With Application.WorksheetFunction
  2.     a = .SumIf(Range("J:J"), Range("p2"), Range("I:I")) - .SumIf(Range("M:M"), Range("p2"), Range("L:L"))
  3. End With
复制代码

评分

参与人数 1 +1 收起 理由
xinfamily@vip.q + 1

查看全部评分

回复

使用道具 举报

发表于 2013-9-9 15:55 | 显示全部楼层
楼上两位的答案应该都可行!
回复

使用道具 举报

发表于 2013-9-9 15:56 | 显示全部楼层
好好学习,天天向上

点评

不要灌水了!  发表于 2013-9-9 16:34

评分

参与人数 1 +21 收起 理由
sliang28 + 21 不要在灌水了?不就要经验嘛 给你

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2013-9-9 16:31 | 显示全部楼层
无聊的疯子 发表于 2013-9-9 15:51
工作表函数在vba中调用的话,其参数应该按 vba 的方式来写

谢谢,运行了一下  是可以的,
不过我是个菜鸟哦,只能算出第一行的,想后面的有数据的行都要运算,那样的代码要怎么写呢,麻烦了  谢谢
回复

使用道具 举报

发表于 2013-9-9 16:37 | 显示全部楼层
xinfamily@vip.q 发表于 2013-9-9 16:31
谢谢,运行了一下  是可以的,
不过我是个菜鸟哦,只能算出第一行的,想后面的有数据的行都要运算,那样 ...


Range("a1:a31").FillDown  '单元格区域区域向下填充公式

评分

参与人数 1 +1 收起 理由
xinfamily@vip.q + 1

查看全部评分

回复

使用道具 举报

发表于 2013-9-10 10:46 | 显示全部楼层
孔梦茵 发表于 2013-9-9 15:56
好好学习,天天向上

谢谢老师,赚够分数才能进学习班呀!
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-30 04:50 , Processed in 0.202748 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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