Excel 使用索引公式定义子范围时出现的问题
我的理解是,可以使用索引定义范围。示例我可以将MyList的定义名称设置为Excel 使用索引公式定义子范围时出现的问题,excel,excel-formula,Excel,Excel Formula,我的理解是,可以使用索引定义范围。示例我可以将MyList的定义名称设置为 =index(A:A,3,1):index(A:A,5,1) 这相当于说A3:A5。然后我可以转过身,使用indexMyList,1,1,我会看到A3的内容。所有这些对我都有用 所以我试图定义一系列工作表名称。我使用定义的名称sheetnames作为: =TRANSPOSE(GET.WORKBOOK(1,Structural!$J$3)&T(NOW())) 我用转置使列表垂直 当我使用: =INDEX(
=index(A:A,3,1):index(A:A,5,1)
这相当于说A3:A5。然后我可以转过身,使用indexMyList,1,1,我会看到A3的内容。所有这些对我都有用
所以我试图定义一系列工作表名称。我使用定义的名称sheetnames作为:
=TRANSPOSE(GET.WORKBOOK(1,Structural!$J$3)&T(NOW()))
我用转置使列表垂直
当我使用:
=INDEX(Sheetnames,3,1)
=INDEX(Sheetnames,6,1)
我在工作簿中分别得到了第三张或第六张工作表的名称。所以这部分是有效的。然而,当我尝试定义一个范围时,就像我使用下面的代码为MyList所做的那样,我得到了一个值
=INDEX(INDEX(Sheetnames,3,1):INDEX(Sheetnames,6,1),1,1)
问题:
为什么它不起作用
作为获得第一张图纸名称的测试,我还尝试了:
=OFFSET(Sheetnames,1,1,1,1)
这也产生了同样的错误
我最终要做的是,通过对所有工作表名称(名为Index和Master的工作表除外)进行数据验证,生成一个下拉列表。根据Excel关于Index的帮助文件 参考表格 描述 返回特定单元格相交处单元格的引用 行和列。如果参考由非相邻选择组成, 您可以选择要查看的内容 语法 索引引用,行数,[列数],[区域数] 索引函数语法具有以下参数 需要参考。对一个或多个单元格范围的引用 等等 因此,为了返回引用,您需要引用一系列单元格。但是,SheetNames并不引用一系列单元格。它引用GET.WORKBOOK,它返回一个值数组。在本例中,它返回一个图纸名称数组 所以用下面的公式
=INDEX(INDEX(Sheetnames,3,1):INDEX(Sheetnames,6,1),1,1)
…假设工作簿名为Book1.xlsx,并且您有Sheet1、Sheet2、Sheet3等,则其计算如下
--> some preliminary evaluations <---
=INDEX("[Book1.xlsx]Sheet3":"[Book1.xlsx]Sheet6",1,1)
=INDEX(#VALUE!,1,1)
=#VALUE!
希望这有帮助 Excel中的GET.工作簿是什么?感谢您抽出时间代表我运行其中的一些内容。我通常会忘记excel中的公式求值选项。有时是一个方便的小装置。我没想到要考虑使用ISRF。很好地指出了我已经忘记的公式。这是否与我不能使用Sheetnames作为数据验证列表的理由相同?
=ISREF(INDEX(Sheetnames,3,1))