Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/28.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 - Fatal编程技术网

Excel 命名区域在合并单元格时拾取不同的行

Excel 命名区域在合并单元格时拾取不同的行,excel,Excel,我想在串联公式中使用两个命名范围。第一个命名范围称为Phase01Names,位于E6:E7中,包含任务01和任务02。第二个命名范围是Phase01Hours,位于AA6:AA7中,它包含每个任务对应的小时数 在另一张纸上,在合并的单元格B6:B38(见下图)中,我试图使用公式=Phase01Names&“-”&Phase01Hours&CHAR(10)&Phase01Names&“-”&Phase01Hours。我希望它同时选择任务名称和小时数,但它只选择第一个任务(第6行)。如何使其在命

我想在串联公式中使用两个命名范围。第一个命名范围称为
Phase01Names
,位于
E6:E7
中,包含任务01和任务02。第二个命名范围是
Phase01Hours
,位于
AA6:AA7
中,它包含每个任务对应的小时数

在另一张纸上,在合并的单元格
B6:B38
(见下图)中,我试图使用公式
=Phase01Names&“-”&Phase01Hours&CHAR(10)&Phase01Names&“-”&Phase01Hours
。我希望它同时选择任务名称和小时数,但它只选择第一个任务(第6行)。如何使其在命名范围内同时从第6行拾取Task 01和从第7行拾取Task 02,并使其显示如图所示,但同时显示两个任务,而不仅仅是第一个任务

我需要使用命名范围的原因是,我希望用户能够添加更多的任务名称和小时数,并且仍然可以让公式提取所有任务名称和小时数

在图中,应该是Task 01-1,然后在下一行Task 02-52


如果您使用的是Office365,则新的TEXTJOIN功能会有所帮助。在你的第二张纸上,你能把B6分成两个单元格吗,一个用于文本,另一个用于数字

如果是这样,您只需将每个单元格上的“Wrap”设置为true,并添加以下公式

在第一个单元格中:

=TEXTJOIN(CHAR(10),TRUE,Phase01Names
在第二个单元格中:

=TEXTJOIN(CHAR(10),TRUE,Phase01Hours)
当按下以下公式的enter键时,按住Ctrl-Shift键,可以使用数组公式将这两个元素组合为一个单元格

=TEXTJOIN(CHAR(10),TRUE,Phase01Names & Phase01Hours)
…这将导致

{=TEXTJOIN(CHAR(10),TRUE,Phase01Names & Phase01Hours)}
这将为您提供所需的内容,但数组公式可能会绊倒其他用户

为了让其他人明白这一点,这里有一个简单的例子:

如果您习惯于使用数组公式,您可以执行以下操作,确保在按enter键时按住Ctrl-Shift键。。。

-1致未留便条就否决该问题的人。不管怎样,问题,你们的范围是什么?确保它们是工作簿范围,而不是工作表范围。您可以通过公式|名称管理器和范围列表的范围列看到这一点。许多人需要删除并重新创建该范围才能将其更改为工作簿,因为这有时是无法即时更改的。@JohnJoseph,投票是匿名的,不需要任何投票的所有者解释或辩解。@JohnJoseph该范围绝对是工作簿范围。我刚查过。这是否意味着它应该拾取不同的行?我猜问题在于合并的单元格。他们只是在看另一张纸上的第6行。@ScottCraner,在仔细阅读了你费尽心机的语法(如何)后,我想说,当然,每个人都知道这一点,但如果你要花时间否决投票并有理由,为什么不说出来呢?“这就是我们改进的方式。”约翰约瑟夫选民们可能很清楚原因。这不是我的否决票,但我经常对问题投反对票,但没有说明原因。但我的猜测是,OP要求使用vba代码,而没有显示对此类代码的任何尝试。