我有一些数据,其中包括2个人的任务列表。
我想用以下格式表示此数据。
看起来像下面的样子。
如何使用公式来实现这一目标?
[编辑] 我认为这个问题与“ Excel中的数据整理-重新排列列和行”不同,因为我的问题是以更甘特的图表式格式反映计划,而另一个问题似乎更多地是关于转置数据。
答案 0 :(得分:2)
不确定在同一张工作表还是新工作表上是否具有所需的输出,但是我使用了从单元格A1
开始的新工作表。公式中将源数据表称为S1
。
Column C
=日期开始Column D
=日期结束A1
为空A2
:=INDEX('S1'!$A$1:$A$6,IFERROR(MATCH(A1,'S1'!$A$1:$A$6,0),1)+COUNTIF('S1'!$A$1:$A$6,A1))
A3
:从A2
B1
:=IF(A1<>"",EDATE(A1,1),MIN('S1'!$C$1:$D$6))
C1
至J1
:从B1
复制的公式B2
:= INDEX('S1'!$B$1:$B$6,MATCH(1,INDEX(('S1'!$A$1:$A$6=$A2)*('S1'!$C$1:$C$6<=B$1)*('S1'!$D$1:$D$6>=B$1),0),0))
B3
和C2
到J3
:从B2
复制的公式A2
公式::查看先前的Person条目首次出现的位置(MATCH
部分),并计算其具有的条目数(COUNTIF
部分)以确定行(INDEX
部分)中的下一个“个人”条目。 IFERROR
部分用于返回第一个Person条目,该条目假定位于第1行。B1
公式::将一个月添加到上一个日期标题(EDATE
部分)。第一个日期标题会在您的源数据(MIN
部分)中寻找最早的日期。B2
公式:在源数据上使用具有多个条件的匹配项(人员条目必须与指定的人员匹配,开始日期必须在日期标题之前或之后,并在结束日期之前日期必须在日期标题之后或日期)。第二个INDEX
创建一个组合的标准结果数组(如果为true,则为1,如果为false,则为0),而MATCH
返回的是哪个条目。第一个INDEX
返回任务(A,B或C)。