Google Sheet函数用于有条件地获取数字的中值



我正在编写一个Google Sheet程序,以汇总另一个Google Sheet中的数据。

包含数据的片材被称为"片材";销售;

在销售表中,每一行代表一笔销售。它有销售代表名称(G列(、销售日期(N列(、销售额类别(V列(和工作日(W列(列。

我正试图为下面的逻辑写一个公式。

根据等于…的行的W列值计算中位数(工作日(。。。

销售代表=";Jane Doe";,

销售日期为2020年1月1日至2020年12月31日,

销售分类=";1〃;

这是我到目前为止的功能。。。

=MEDIAN(Sales!W:W,(if(Sales!G:G,"Jane Doe",Sales!N:N,">=1/1/2020 00:00:00", Sales!N:N,"<=12/31/2020 23:59:59",Sales!V:V,"1")))

上面的代码有一个错误。知道怎么做吗?

这能满足您的要求吗?注意,您可能需要调整范围以适应您的数据:

=MEDIAN(QUERY(Sales!G1:W,"select W 
where G = 'Jane Doe' and 
V = 1 and 
N >= date '"&TEXT(DATEVALUE("1/1/2020"),"yyyy-mm-dd")&"' and 
N <= date '"&TEXT(DATEVALUE("12/31/2020"),"yyyy-mm-dd")&"'",1))

如果你只使用以下内容,你可以检查它正在使用什么记录:

=QUERY(Sales!G1:W,"select G,V,N,W 
where G = 'Jane Doe' and 
V = 1 and 
N >= date '"&TEXT(DATEVALUE("1/1/2020"),"yyyy-mm-dd")&"' and 
N <= date '"&TEXT(DATEVALUE("12/31/2020"),"yyyy-mm-dd")&"'",1)

如果这有帮助,请告诉我们。

最新更新