在Google App Script中返回多个参数值

时间:2016-02-12 15:15:24

标签: javascript google-apps-script google-sheets google-spreadsheet-api

我目前正在制作一张制作模态/侧边栏的工作表。我的问题是我真的需要从* .gs文件中的函数传递多个值。

目前我知道我可以实现这个:

google.script.run.withSuccessHandler(myFunction).gasFunction('argument value');

的index.html

<html>
<head></head>
<body>
<script>
    var hello = 'Not Working';
    google.script.run.withSuccessHandler(indexLog).logMe('hello');
    function indexLog(hello) {
        console.log(hello);
    }
</body>
</html>

GAS SCRIPT

function logMe(hello) {
    return  hello;
}

所以我处于一个多次运行连续方法的位置,以便返回所需的所有参数,即

google.script.run.withSuccessHandler(indexLog).logMe('value 1');
google.script.run.withSuccessHandler(indexLog).logMe('value 2');
google.script.run.withSuccessHandler(indexLog).logMe('value 2');

我的值是单元格引用,但我需要的范围不是单个单元格值

然后我接受这些值并希望构建一个数组来正确迭代我的for循环函数中的值。

提前致谢!

1 个答案:

答案 0 :(得分:0)

这是方法的细节。

<强> SpreadsheetApp.getActiveSheet()getRange(小区).getValue();

function returnCellValue(cell) {
    return (SpreadsheetApp.getActiveSheet().getRange(cell).getValue());
}

即使输入了范围,也只返回1个值。 getValue()只返回1个值,无论范围如何。

<强> SpreadsheetApp.getActiveSheet()getRange(小区).getValues();

function returnCellValue(cell) {
    return (SpreadsheetApp.getActiveSheet().getRange(cell).getValues());
}

使用 getValues()将范围作为数组传递,然后我可以迭代。目前,Google App脚本和表格仅支持触摸单元格的范围,因此如果它们不是引用单元格的邻居,则不能使用逗号分隔符来定义所需的所有范围。