如何在Excel中检索特定日期的股票价格?

如何在Excel中检索特定日期的股票价格?

我曾尝试使用 stockhistory 公式(=STOCKHISTORY(I8,G8, ,0,0,1))获取特定日期的某个股票的股价,但出现的框包含 2x2 信息,这不是我需要的。我只需要当天的股价。我在网上搜索并查看了许多资料,但找不到解决方案。

我找到的唯一公式是图片中显示的公式。此公式适用于某些股票代码,但并不适用于所有纳斯达克股票代码。我不知道如何解决这个问题。

我遇到的错误截图: 截屏。

答案1

您只需使用该INDEX函数来返回您想要的单个项目。

例如,要返回 2023 年 1 月 4 日 IBM 的收盘价,您可以使用以下命令:

=INDEX(STOCKHISTORY("IBM", "2023/1/4"),2,2)

显然,您可以用单元格引用替换常量。

答案2

我很少使用数据类型,因此我对这里的“头条新闻”功能没有常规经验,并且可能有一些微妙的东西让我难以理解。

但是,当我输入公式时,它对我有用。它直接作用于数据类型,当我使用连接公式形成“股票市场:股票行情”字符串时,它也能起作用。它也适用于纯文本(键入)版本。

不过,有一件事与这里的“头条新闻”无关,即存在的数据类型。那就是正在使用的日期。它们对我来说很好用,但是,我将它们输入为日期。即使我将它们格式化为文本,Excel 也会意识到它们在这里将用作日期,并且没有任何困难。

但是列标题(列 G)指定,大概是针对输入数据的工蜂,信息的格式是“MM-DD”……但数据实际上是左对齐的,这是一个非常常见的“肯定”的标志,表明条目实际上是文本。而且目前的数据看起来与其他数据的格式截然不同。

我必须得出结论,最有可能的是,数据是从某个对我们来说不太重要的地方获得的,并且是文本形式,然后肯定以文本形式粘贴进去。

因此,您显示的公式没有给出实际日期,Excel 也没有尝试将其用作日期。因此公式失败,并且您收到特定错误。

第 2 行中的符号(带圆圈的“?”)很有趣,因为它表明 Excel 无法匹配它,但这并没有发生在我身上,所以......在那里帮不上什么忙,但你也没有提起这件事。

您提到的相关问题,即数据返回为 2x2 返回,我完全无法使用您尝试收集的数据进行重现。我可以从数据类型中搜索其他数据获得 1x2 返回,并想象其他包含的信息可以产生 2x2 返回,但这并不符合您所说的要求。

话虽如此,有一种非常简单的方法来处理“NxM”返回值:使用它INDEX来删除您想要的单个数据。我一直寻找直到得到 1x2 返回值,这样我就可以直接在数据类型的返回值上使用它进行测试,结果效果非常好。

因此,请将日期设为实际日期,并使用INDEX多项回报来提取所需的部分。

INDEX奇怪的是,人们并不这样认为,但红头发的表亲仍然是表亲。

顺便说一句,仅仅重新格式化日期可能会让您认为我完全错了,因为您经常这样做,而 Excel 不会立即执行其部分。然后您必须使用一种或另一种“强制”技术来迫使 Excel 执行此操作。最简单的方法?使用将粘贴的数据复制到空白页,Paste|Special|Values然后,当看到它们显示为真实日期时,复制并粘贴回 G 列。否则,您肯定会被 Excel 欺骗,它实际上没有根据您的格式更改采取行动,并认为我可能是在美国 Wrongtown 写信。

附注:粘贴公式时我遇到了很多#BUSY错误。如果输入公式,然后按 Enter,我会立即感到高兴。转到粘贴的补丁并按 F2,然后按 Enter,立即感到高兴。一种绕过方法是使用范围而不是“G8”和“I8”寻址。然后按 Enter,我得到的不是好单元格,而是整列都很好,没有“忙音”。

我相信这个问题与数据类型或公式根本无关。

相关内容