首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >查找某一特定日期的最新股票报价

查找某一特定日期的最新股票报价
EN

Stack Overflow用户
提问于 2016-07-15 11:48:28
回答 2查看 108关注 0票数 0

我在Google电子表格中有这样一个表格:

代码语言:javascript
复制
Stock                    Date          Price
代码语言:javascript
复制
DNB Nordic Technology    2016-07-12    968,7449
DNB Nordic Technology    2016-07-13    970,0482
DNB Nordic Technology    2016-07-14    970,0500
Elementa                 2016-03-30   1167,0704
Elementa                 2016-04-30   1175,8091
Elementa                 2016-05-31   1184,1240
Elementa                 2016-06-30   1196,5268
Evli Emerging Frontier B 2016-07-12   1164,6900
Evli Emerging Frontier B 2016-07-14   1171,3400

我需要的是一张表格,上面只列出每只股票在某一特定日期(如2016-07-13 )的最新价格。

代码语言:javascript
复制
DNB Nordic Technology       2016-07-13  970,0500
Elementa                    2016-06-30 1196,5268
Evli Emerging Frontier B    2016-07-12 1166,9200

我想使用一个查询,以便我可以使用结果/表,并运行一个查询使用ARRAYFORMULA(和.(数量*价格))得到我的投资组合的总价值。

请帮助:)

此查询将得到最新的日期,但没有价格:(

查询(‘stock’!$A:$C;“选择A,max(B),其中A<>‘组由A’,max(B)‘”)

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-07-16 10:43:27

给你:

代码语言:javascript
复制
=ARRAYFORMULA(IF(ISTEXT(UNIQUE(A2:A)),VLOOKUP(UNIQUE(A2:A),SORT(A2:C,1,true,2,false),{1,2,3},false),))

我在这里所做的是,首先给它一个条件,只在具有潜在值的行上运行,这样就不会拖住工作表--然后按照名称(升序),然后按日期(降序)进行排序,这样我们只需要每个名称的第一行,日期对,然后返回所有索引。

以下是您的区域设置的更新格式:

代码语言:javascript
复制
=ARRAYFORMULA(IF(ISTEXT(UNIQUE(A2:A));VLOOKUP(UNIQUE(A2:A);SORT(A2:C;1;true;2;false);{1\2\3};false);))

如果您需要日期参数,这里也是修改:

代码语言:javascript
复制
 =ARRAYFORMULA(IF(ISTEXT(UNIQUE(FILTER(A:A;B:B<=D1)));VLOOKUP(UNIQUE(FILTER(A:A;B:B<=D1));SORT(FILTER(A:C;B:B<=D1);1;true;2;false);{1\2\3};false);))

我所做的就是在数组上添加一个过滤器函数--还要注意这个公式根本不需要使用查询。

票数 0
EN

Stack Overflow用户

发布于 2016-07-16 09:54:32

看看这是否有效

代码语言:javascript
复制
=ArrayFormula(iferror(vlookup(unique(A2:A); sort(A2:C; 2; 0); {1\2\3} ;0)))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38395385

复制
相关文章

相似问题

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