如何计算一列 "Jan 1" 格式化日期的年份?

How to calculate years for a column of "Jan 1" formatted dates?

我有几列数据,通过 ImportXml 从网站导入,其中所有日期的格式如下:

A B Year for A Year for B
Jan 22 Feb 3 =Sequence(366-21, 1, 2020, 0) =Sequence(366-31-2, 1, 2020, 0)
Jan 23 Feb 4
...one row per day in 2020...
Dec 31 ...
Jan 1 ... =Sequence(365, 1, 2021, 0)
... ...

我需要将这些转换为实际日期,因此需要一年(从 2020 年开始)。我目前通过 Sequence 填写年份列,这很麻烦,因为我需要根据开始日期为每一列输入一个自定义公式,并且我需要为每个新的一年重复该序列。

有人有更好的主意吗?

到目前为止的文本转换是这样完成的:

=ARRAYFORMULA(IF(A2:B="",,A2:B*1))


更新:

=INDEX(IF(A2:A="",, DATE(2020+IFNA(VLOOKUP(ROW(A2:A), IF(
 IFERROR(1/(1/COUNTIFS(A2:A, A2:A, A2:A, "=jan 1", 
 ROW(A2:A), "<="&ROW(A2:A))))<>"", {ROW(A2:A), 
 IFERROR(1/(1/COUNTIFS(A2:A, A2:A, A2:A, "=jan 1", 
 ROW(A2:A), "<="&ROW(A2:A))))}), 2, 1), 0), MONTH(A2:A*1), DAY(A2:A*1))))

=INDEX(IF(B2:B="",, DATE(2020+IFNA(VLOOKUP(ROW(B2:B), IF(
 IFERROR(1/(1/COUNTIFS(A2:A, A2:A, A2:A, "=dec 31", 
 ROW(B2:B), "<="&ROW(B2:B))))<>"", {ROW(B2:B), 
 IFERROR(1/(1/COUNTIFS(A2:A, A2:A, A2:A, "=dec 31", 
 ROW(B2:B), "<="&ROW(B2:B))))}), 2, 1), 0), MONTH(B2:B*1), DAY(B2:B*1))))