Javascript 逻辑悖论-自定义函数-参数来自另一个函数
我希望我能让这一切变得有意义 我已经完成了一系列其他函数,最终得到了一个变量,该变量包含用户从侧边栏上的下拉列表中选择的数据到我的google工作表 该变量发送到的最后一个函数如下所示:Javascript 逻辑悖论-自定义函数-参数来自另一个函数,javascript,function,google-apps-script,global-variables,Javascript,Function,Google Apps Script,Global Variables,我希望我能让这一切变得有意义 我已经完成了一系列其他函数,最终得到了一个变量,该变量包含用户从侧边栏上的下拉列表中选择的数据到我的google工作表 该变量发送到的最后一个函数如下所示: function processFormResponse(formObject ){ reportMonth = formObject.chosenReport; //result of reportMonth is a string. Example "Report_Nov 2017" } =I
function processFormResponse(formObject ){
reportMonth = formObject.chosenReport;
//result of reportMonth is a string. Example "Report_Nov 2017"
}
=IFERROR(VLOOKUP($E3, reportMonth !$F:$J,2,false),"")
现在我有了一个名为reportMonth的变量,它满足了我的需要。但是现在,我想写一个vlookup,它将每次选择相同的范围,但根据用户选择报告的不同,在不同的表上。
根据我的研究,我不能在vlookup中使用变量,所以我打算编写一个自定义函数来为我进行查找
但这是我的悖论:我不能使用processFormResponse作为我的自定义函数,因为它的formObject已经在其参数中,因为它已经从上一个函数接收到信息,而我不能单独使用函数,因为我似乎无法使reportMonth成为全局函数。。。我有var和没有var
我基本上是这样的:
function processFormResponse(formObject ){
reportMonth = formObject.chosenReport;
//result of reportMonth is a string. Example "Report_Nov 2017"
}
=IFERROR(VLOOKUP($E3, reportMonth !$F:$J,2,false),"")
正如Google Apps脚本文档中提到的:
对于范围对象:
设置范围的值。该值可以是数字、字符串、布尔值或日期。如果以“=”开头,则解释为公式
所以,如果你有一个1单元范围,也就是一块单元,那么你可以运行
range.setValue("=IFERROR(VLOOKUP($E3,"+reportMonth+"!$F:$J,2,false),"")");
仅供参考:您是说range.Setvalue将成为我的新自定义函数吗?我只是想指出,我正在实现这一点。。。我回到了基础,做了一个更简单的函数,现在我掌握了这个,我想我最终会得到t!在谷歌的行话中,自定义函数有一个特殊的含义。您的问题是关于要在公式中使用的用户定义的工作表函数吗?参考