Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Excel中合并两个列表,一个在另一个下面_Excel_Dynamic Arrays - Fatal编程技术网

在Excel中合并两个列表,一个在另一个下面

在Excel中合并两个列表,一个在另一个下面,excel,dynamic-arrays,Excel,Dynamic Arrays,我在Excel中有两个产品列表。每个列表的长度每个月都会有所不同 有没有办法将这两个列表合并成第三个列表,第二个列表在第一个列表下面 我想这样做,避免宏 我想象这可以用动态数组来完成,但我想不出来 请参见下面的示例: 提前非常感谢。我以前遇到过这个问题,并使用教程来帮助我。我还附上了一个公式,它提供了可能解决您的问题的公式 有关单元格引用,请参见下图-然后尝试以下操作: =IFERROR(索引($B$3:$B$7,行(H2:$H$2))、IFERROR(索引($D$3:$D$4,行(H2:$H

我在Excel中有两个产品列表。每个列表的长度每个月都会有所不同

有没有办法将这两个列表合并成第三个列表,第二个列表在第一个列表下面

我想这样做,避免宏

我想象这可以用动态数组来完成,但我想不出来

请参见下面的示例:


提前非常感谢。

我以前遇到过这个问题,并使用教程来帮助我。我还附上了一个公式,它提供了可能解决您的问题的公式

有关单元格引用,请参见下图-然后尝试以下操作:

=IFERROR(索引($B$3:$B$7,行(H2:$H$2))、IFERROR(索引($D$3:$D$4,行(H2:$H$2)-行($B$3:$B$7))、IFERROR(索引($F$3:$F$6,行(H2:$H$2)-行($B$3:$B$7)-行($D$3:$D$4))


我已经找到了一个适合我的解决方案,列表长度可变

使用与Mardi Louise的答案类似的场景,我在单元格F3中使用以下公式,然后向下拖动:

=如果(B3“”,B3,抵销($D$3,ROW()-COUNTA($B$3:$B$7),0))

说明:

  • 只要列表1没有完成,它就从列表1中获取值
  • 一旦列表1完成,它将从列表2的顶部开始,并使用偏移向下移动

非常感谢您的回复。这确实是一个很好的解决办法。然而,在我的特定用例中,原始列表的长度是未知的。我不知道在这种情况下如何调整这些公式。