excel调用自定义函数没有结果

我用VBA写了一个自定义函数:getMonth(),他的返回值是{"1","2","3","12"},这个值在VBA中定义的是字符串。。。已经确定返回值是没问题的。。。。... 我用VBA写了一个自定义函数:getMonth(),他的返回值是 {"1","2","3","12"},这个值在VBA中定义的是字符串。。。已经确定返回值是没问题的。。。。。现在我在单元格中使用了自定义函数 getMonth() , 写法如下 =SUM(SUMIFS(日记账!E:E,日记账!B:B,getMonth())) 为什么这样的写法求和为0, 但是 =SUM(SUMIFS(日记账!E:E,日记账!B:B,{"1","2","3","12"})) 这样的写法就能有正常的求和值 展开
 我来答
苏有在1i
2019-01-10 · 超过17用户采纳过TA的回答
知道答主
回答量:30
采纳率:100%
帮助的人:3.1万
展开全部

方法/步骤

  • 打开Excel2007,切换至“开发工具”选项卡,点击“Visual Basic”按钮进入VBA编程环境。

  • 在VBA环境下,右击“Microsoft Excel对象”,在弹出的菜单中选择“插入”→“模块”。

  • 接着点击“插入”菜单中的“过程”。

  • 在打开的“添加过程”窗口中,输入函数名称,例如“ShowID”,类型设置为“函数”,最后点击“确定”按钮进入编辑状态。

  • 在打开的函数编辑窗口中,输入该函数要实现的功能。例如编辑如图所示的代码:

  • 点击“关闭并返回Microsoft Excel"。

  • 7

    在Excel工作表中输入公式“=ShowID()”并按回车键,就可以查看效果啦。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
三条桥聚星
2019-01-10 · TA获得超过2万个赞
知道答主
回答量:123
采纳率:42%
帮助的人:23.1万
展开全部
问题就在于getMonth()你定义的是字符串。而公式=SUM(SUMIFS(日记账!E:E,日记账!B:B,{"1","2","3","12"})) 里的{"1","2","3","12"}是个数组,两者是有区别的。
建议直接用VBA编程代替 公式=SUM(SUMIFS(日记账!E:E,日记账!B:B,{"1","2","3","12"}))。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式