如何计算一列 "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))))
我有几列数据,通过 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))))