我在下面的列中有一个名为'equity'的MS Excel表。
Date Open Close PrevOpen PrevClose
18-Jul-18 99.8 101.9
19-Jul-18 100.7 102.1
20-Jul-18 101.2 103.7
23-Jul-18 102.1 99.8
24-Jul-18 101 102.8
对于每一行,我需要获取前一天的开盘价和收盘价。不管行的顺序。
例如,我的第二行应如下所示。
Date Open Close PrevOpen PrevClose
18-Jul-18 99.8 101.9
19-Jul-18 100.7 102.1 99.8 101.9
20-Jul-18 101.2 103.7
23-Jul-18 102.1 99.8
24-Jul-18 101 102.8
感谢您的帮助。
答案 0 :(得分:0)
这是解决方案
首先选择A1到“关闭”列的最后一个单元格,然后按ctrl + alt + f3。出现的框名称为“数据”
在Prev open col中添加此公式并将该公式拖动到同一列中表格的最后一个单元格
= IFERROR(VLOOKUP(A2-1,Data,2,FALSE),“-”)
在“上一个关闭”列中,添加此公式并将相同的拖动拖到最后一行
= IFERROR(VLOOKUP(A2-1,Data,3,FALSE),“-”)
答案 1 :(得分:0)
在列PrevOpen
中,使用:
=IFERROR(INDEX([Open],MATCH(MAX(INDEX(([Date]<[@Date])*[Date],0)),[Date],0)),"")
在列PrevClose
中,使用:
=IFERROR(INDEX([Close],MATCH(MAX(INDEX(([Date]<[@Date])*[Date],0)),[Date],0)),"")
它们将返回前一个日期的“打开/关闭”值,而忽略任何日期间隔,并忽略表的排序顺序。