我有以下查询功能
=QUERY(C:J,"SELECT SUM(J) WHERE C='"&C2&"' AND H<=date'"&TEXT(H2,"yyyy-MM-dd")&"' LABEL SUM(J) ''",0)
Run Code Online (Sandbox Code Playgroud)
C2和H2相对于每一行是唯一的(C2,C3,C4,......和H2,H3,H4 ...)
我需要将它放入ARRAYFORMULA,因此它会在每一行产生一些结果
我已经花了一整天的时间,用SUMIFS检查所有其他解决方案并尝试用MMULT重新编写公式,但没有任何成功.
这是一个简化的例子:
Proj Date Hours
APROJ 6/29/2015 81.75
APROJ 6/22/2015 80.75
BPROJ 8/3/2015 689
BPROJ 8/2/2015 656
BPROJ 8/10/2015 688
BPROJ 8/11/2015 729
CPROJ 8/12/2015 1757
Run Code Online (Sandbox Code Playgroud)
我的尝试没有成功:= arrayformula(mmult((A:A = A1:A)*(B:B <= B1:B)*N(C:C),转置(符号(列(C:C))) ))
所需的专栏是:
CHECK
162.5
80.75
1345
656
2033
2762
1757
Run Code Online (Sandbox Code Playgroud)
如果我输入每一行公式:= SUMIFS(C $ 2:C,A $ 2:A,"="&A2,B $ 2:B,"<="&B2)当从第2行手动扩展时它正在工作
提前致谢.
如果您想玩,只需复制到自己:https://docs.google.com/spreadsheets/d/12F4EsHvkiZb5gAPVo_uosd2YpZ1nw9QED_JlSAcVQYU/edit?usp=sharing
PS > Get-Item env: | Select-Object -First 1 | ForEach-Object GetType
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
False True ValueCollection System.Object
PS > (Get-Item env:) | Select-Object -First 1 | ForEach-Object GetType
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True DictionaryEntry System.ValueType
Run Code Online (Sandbox Code Playgroud)
序言:我想知道为什么我不能使用 Where-Object 来过滤 Get-Item env:
PS 以防万一,过滤环境的解决方案:
(Get-Item env:) | Where-Object Name -eq 'PUBLIC' Get-Item env:\* | Where-Object Name -eq 'PUBLIC' Get-ChildItem env: | Where-Object Name -eq 'PUBLIC' gi env: |% GetEnumerator |? Name …