如果工作表编号/名称是变量/变体,则参考公式中的下一页或上一页

时间:2017-09-28 07:56:21

标签: excel function excel-formula

如果工作表编号/名称是变量/变体,如何引用公式中的下一张或上一张工作表。

我已经看过用vba做这个的方法,有没有办法用公式或函数做到这一点

2 个答案:

答案 0 :(得分:1)

  1. 在Excel中。在任何单元格中输入等号“=”。这将使您进入交互模式。

  2. 导航到其他工作表,然后单击要引用的单元格。然后按回车键。

  3. 返回上一张工作表并编辑您开始使用的单元格,您应该看到要使用的公式。

  4. 引用下一个/ prevoius工作表(See example here)。你需要一些我认为的VB代码(有些东西):

    Function PrevSheet(RCell As Range)
        Dim xIndex As Long
        Application.Volatile
        xIndex = RCell.Worksheet.Index
        If xIndex > 1 Then _
            PrevSheet = Worksheets(xIndex - 1).Range(RCell.Address)
    End Function
    

    然后使用

    =PrevSheet(A1)
    

答案 1 :(得分:1)

以下是使用常规Excel公式列出所有工作表名称的另一种方法:

  1. Cell A1=CELL("filename",1:1048576)

  2. Cell B1=MID(A1,FIND("[",A1)+1,FIND("]",A1)-FIND("[",A1)-1)

  3. 转到Formula > Name Manager > New,如下图所示,在SheetNames字段中输入 Name ,在Refers to中输入以下公式} field:

    <强> =GET.WORKBOOK(1,Sheet29!$B$1)&T(NOW())

    请注意,我是在Sheet29上设置的。您应该将其更改为您正在使用的工作表。

  4. cell A2,填写下面的公式并向下拖动以列出所有工作表名称:

    <强> =INDEX(MID(SheetNames,FIND("]",SheetNames)+1,255),ROWS(A$1:A1))

  5. 在我的示例中,我没有Sheet28,并且工作表名称按从左到右的顺序排序。四处移动并查看结果。