Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google sheets 从数据中获取有意义的报告_Google Sheets_Google Query Language - Fatal编程技术网

Google sheets 从数据中获取有意义的报告

Google sheets 从数据中获取有意义的报告,google-sheets,google-query-language,Google Sheets,Google Query Language,我对GoogleSheets相当陌生,对功能非常了解。我正试图创建一个表格来记录不同项目的买卖,然后生成一个报告,在那里我可以看到利润和剩余的库存项目,平均买卖价格等。这里有一个链接和我尝试过的内容 请让我知道它是否可以实现,如果是我需要寻找的,任何样本或链接,以正确的方向学习,以实现我的努力。附加屏幕截图以快速浏览。 我使用的查询:- =查询2:F9,通过A、B标签SumC“总量”,SumE“总价”选择A、B、SumC、SumE组 多谢各位 另外,我之前也在谷歌集团发布过。如果我找到任何解决方

我对GoogleSheets相当陌生,对功能非常了解。我正试图创建一个表格来记录不同项目的买卖,然后生成一个报告,在那里我可以看到利润和剩余的库存项目,平均买卖价格等。这里有一个链接和我尝试过的内容

请让我知道它是否可以实现,如果是我需要寻找的,任何样本或链接,以正确的方向学习,以实现我的努力。附加屏幕截图以快速浏览。 我使用的查询:-

=查询2:F9,通过A、B标签SumC“总量”,SumE“总价”选择A、B、SumC、SumE组

多谢各位


另外,我之前也在谷歌集团发布过。如果我找到任何解决方案,我会将其链接回那里。

我找不到一种简单而简洁的方法来实现您想要的布局,但是您可以使用索引从查询中提取一行和一列,该行和一列包含第一列的公式

=if(int(rows($1:3)/3)<=countunique($A$2:$A$9),choose(mod(rows($1:3),3)+1,index(QUERY($A$2:$F$9,"select A,B,Sum(C),Sum(E) group by A,B Label Sum(C) 'Total Quantity',Sum(E) 'Total Price'") ,int(rows($1:3)/3)*2,1),"","Total"),"")
然后计算它是报表中组的第一行、第二行还是第三行,并使用Choose函数输入项目名称、空白单元格或单词Total

第二列以同样的方式工作

=if(int(rows($1:3)/3)<=countunique($A$2:$A$9),if(mod(rows($1:3),3)<2,index(QUERY($A$2:$F$9,"select A,B,Sum(C),Sum(E) group by A,B Label Sum(C) 'Total Quantity',Sum(E) 'Total Price'") ,int(rows($1:3)/3)*2+mod(rows($1:3),3),2),""),"")
第一个Mod函数用于计算它应该显示查询中的b行还是s行,还是空白,第二个Mod函数用于计算它应该是查询中的b行还是s行

第三列也是类似的

=if(int(rows($1:3)/3)<=countunique($A$2:$A$9),if(mod(rows($1:3),3)<2,index(QUERY($A$2:$F$9,"select A,B,Sum(C),Sum(E) group by A,B Label Sum(C) 'Total Quantity',Sum(E) 'Total Price'") ,int(rows($1:3)/3)*2+mod(rows($1:3),3),3),L11-L12),"")
第一个Mod函数用于计算它是否应该显示查询中的数量,或者前两行的差异,第二个Mod函数用于计算它应该是查询的b行还是s行

第四列与第二列几乎相同

=if(int(rows($1:3)/3)<=countunique($A$2:$A$9),if(mod(rows($1:3),3)<2,index(QUERY($A$2:$F$9,"select A,B,Sum(C),Sum(E) group by A,B Label Sum(C) 'Total Quantity',Sum(E) 'Total Price'") ,int(rows($1:3)/3)*2+mod(rows($1:3),3),4),""),"")

我无法计算出实际利润应该如何计算。

与其将公式添加为图像,不如将其作为文本包含,通常将其格式化为代码,以提高可读性。看起来您需要使用透视表。谢谢@Rubén,我已经附上了样本表链接,也更新了文本查询。我也尝试了pivot,但未能按我想要的方式获得它,可能是因为我缺乏知识。您可以使用索引从查询中提取一行,根据您在结果表中所处的行。也许以后再看一看。顺便问一下,实际利润的计算方法是什么?谢谢@TomSharpe,这对我很有帮助,我将阅读并了解它的工作原理,大多数函数都不熟悉。实际利润计算采用先进先出模式,即我将在销售发生前平均购买率,并扣除销售金额,例如第1项平均购买率为11,直到销售日期,然后我将说12销售率-11平均购买率=1该销售的实际利润。希望我说的有道理。这项工作是维护任何以不同价格购买商品的小店的库存。这是一页记录所有,然后看看什么是库存,什么是销售利润等作为报告。