我正在使用以下公式从特定工作表中检索日期数组:
= INDEX(间接(“'”“&CONCATENATE(I $ 2,”“,”子任务“)&”'!$ H $ 2:$ H $ 2385“ ))
(单元格 I $ 2 是工作表的缩写,所有工作表的名称均为“ C#子任务”,例如“ C1子任务”,“ C2子任务” .... Ci子任务等)
每张纸都有几列,所有列都具有相同的单元格范围(2:2385)。 唯一的区别当然是列字母(在上述情况下为“ H”)
我想使范围$ H $ 2:$ H $ 2385动态,因此我可以根据条件在各列之间切换。假设如果单元格A2 =“ 结束日期”,则字母“ H ”将被替换为“ G ”。
我尝试了CONCATENATE和INDIRECT,但是,它没有用。
有什么想法吗?
答案 0 :(得分:0)
您可以使用ADDRESS
函数和VLOOKUP
确定该列。
我将数组硬编码为公式中的数组常量,但您也可以设置一个表并通过单元格引用对其进行引用:
=INDEX(INDIRECT(ADDRESS(2,VLOOKUP($A$2,{"End Date",7;"Start Date",6;0,8},2,FALSE),,,$I$2&" SubTasks")&":"&ADDRESS(2385,VLOOKUP($A$2,{"End Date",7;"Start Date",6;0,8},2,FALSE))),1,1)