首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >.Value =VALUE(“SUMPRODUCT”)返回#值,但.Value = "=SUMPRODUCT“正确工作吗?

.Value =VALUE(“SUMPRODUCT”)返回#值,但.Value = "=SUMPRODUCT“正确工作吗?
EN

Stack Overflow用户
提问于 2019-03-20 16:44:54
回答 1查看 40关注 0票数 0

我有一个从数据集生成报告的脚本。该数据集与票证/跟踪号码的客户支持日志有关,其中包含基本的票证信息,例如票证何时打开、罚单分配给谁以及主要问题/工作负载是什么。我的目标是创建一个已经存在但使用枢轴表(几乎没有人知道如何使用)手动完成的报表,并避免使用公式。

基本报告是每个员工每月完成工作量的数量。除了大多数人不知道怎么做外,使用枢轴表很容易做到。这个excel公式得到了我想要的一月份的结果,=SUMPRODUCT((data!Column1="Employee1")*(data!Column2="Workload A")*(data!Column3>=DATEVALUE("2019-1"))*(data!Column3<DATEVALUE("2019-2")))。数据的缺点是日期是格式化为短日期的日期值。我在VBA中的解决方案是:

代码语言:javascript
复制
Cell.Value = "=SUMPRODUCT((data!" & AssigneeCol.Address & "=""" & Assignee.Value & """)*(data!" & WorkloadCol.Address & "=""" & Workload.Value & """)*(data!" & DateCol.Address & ">=DATEVALUE(""" & Worksheet.Name & """))*(data!" & DateCol.Address & "<DATEVALUE(""" & Year & Month2 & """)))"

这在excel中留下了一个巨大的公式,它引用的是data工作表,它不会包含在报告中(尽管我认为它可能是隐藏的)。我更喜欢用值来使表格更容易被管理层处理。我试过使用计算,但它使单元格值#VALUE!

代码语言:javascript
复制
CheckCell.Value = Evaluate("=SUMPRODUCT((data!" & AssigneeCol.Address & "=""" & Assignee.Value & """)*(data!" & WorkloadCol.Address & "=""" & Workload.Value & """)*(data!" & DateCol.Address & ">=DATEVALUE(""" & Worksheet.Name & """))*(data!" & DateCol.Address & "<DATEVALUE(""" & Year & Month2 & """)))")

这是因为DATEVALUE ()在SUMPRODUCT中的固有限制吗?据我所知,这应该是可行的,但我不知道。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-03-20 16:57:22

不回答有关计算的问题,但仍然可以使用单元格内公式,然后用结果替换公式。

代码语言:javascript
复制
With Cell
   .Formula = "=SUMPRODUCT((data!...  etc etc"
   DoEvents
   .Value = .Value
End With
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55266029

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档