使用公式动态创建数组

Dynamically create array using formula

我需要使用 Google 电子表格中的 =DATEDIF() 动态创建一个包含两个日期之间所有月份的数组。例如,=DATEDIF(B2,B3,"M") returns 11,所以我需要一个包含 2015 年 10 月到 2016 年 9 月之间所有月份的数组。

是否可以使用公式来完成此操作? 非常感谢!

试试这个:

=ArrayFormula(TEXT(EOMONTH(A1,row(OFFSET(A1,,,DATEDIF(A1,A2,"m")))-1),"m"))

假设 A1 = date1(2015 年 10 月),A2 = Date2(2016 年 9 月),日期格式。 A1 偏移部分是对第一个单元格的引用。

更改公式中的第二个 "m" 以获得格式:

  • "m" = {1,2,3,4...}
  • "mm" = {01,02,03...}
  • "yyyymm" = {201510, 201511, 201512, 201601...}

example file