【问题标题】:Google spreadhseet EVAL function谷歌电子表格 EVAL 函数
【发布时间】:2015-06-08 15:16:21
【问题描述】:

我有一个包含不同工作表的谷歌电子表格,每一个代表不同的一周。

例如:

  • 1/12 - 1/16
  • 1/19 - 1/23

我想根据这些表格的内容制作一个图表。有什么方法可以制作公式并从单元格的内容中提取工作表的名称?

例如“=EVAL(A1)!$B$4”之类的内容,那么我将获得“1/12 - 1/16”的内容!$B$4,而不必每个星期都经过年度最佳手动。

感谢您的帮助!

【问题讨论】:

    标签: google-apps-script google-sheets


    【解决方案1】:

    无需使用 AppScript,INDIRECT 足以从单元格中读取工作表名称:

    =INDIRECT(A1 & "!$B$4")
    

    但是,如果您想从索引而不是单元格中获取工作表名称,Andy 的答案似乎是可行的方法。

    【讨论】:

      【解决方案2】:

      最好使用 AppScript。在工具 -> 脚本编辑器中创建一个新的 AppScript 脚本:

      function getSheetName(i) {
        var s = SpreadsheetApp.getActiveSpreadsheet().getSheets() 
        return s[i].getName();
      }
      

      在您的脚本中,您可以使用自定义函数=getSheetName(<SHEETNUMBER>),它将根据工作表编号(从 0 开始)检索工作表名称。从那里,只需将其合并到您的公式中。您可能需要使用INDIRECT。

      示例:=INDIRECT(getSheetName(1)&"!A1") 获取第二张工作表中的单元格 A1。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-05-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多