gpt4 book ai didi

javascript - 自动运行功能

转载 作者:行者123 更新时间:2023-12-01 01:23:32 25 4
gpt4 key购买 nike

我在谷歌脚本中完成了一个自定义函数,奇怪的是,每次我运行另一个谷歌脚本时,这个函数似乎都会再次运行......

我不明白这个......作为一个函数,一旦你输入它,结果应该是静态的,但它会改变......

例如,当您使用 sum 等非自定义函数时,它会显示为数字,并且不会更改,除非您决定更改参数...

更多信息,我没有使用任何 onEdit() 代码。

如何才能只运行一次自定义函数,例如,当我第一次仅在单元格中编写它时?

我的代码是这样的:

'/**
*
*
* @customfunction
*/
function CreateID(row) {

var ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Relationships");
var BI = BatchID(row);
var data1 = ss.getRange('B:B').getValues();
var data2 = ss.getRange('G:G').getValues();
var Max = getMaxInColumn();
var RoleName = SearchRoleName(row);
var count = 0;

for(var i = 0;i<row;i++){

if(data1[i] == RoleName){

if(data2[i] == Max){
count = count +1;

} // close 1.1.1 IF
} // close 1.1 IF

}
Logger.log(count);

if(count<BI){

return Max;

}else if(count>=BI){

return Max+1;
count = 0;
Max=getMaxInColumn();
}
}'

一个例子可能是这样的:香蕉4个一批,橙子3个一批所以我有两列

Column 1 FRUIT   Column 2 ID Banana           1Banana           1Banana           1Banana           1Orange           2Orange           2Orange           2 Banana           3Orange           4Banana           3

但是当我运行另一个函数时,即使在同一电子表格中的另一个项目中,这些数字也不会保留它的值,因为我发现它再次运行......

非常感谢!

最佳答案

所有自定义函数都在全局范围内,因此每次调用另一个函数时都会加载。为自定义函数使用单独的项目。

File>New>Project

关于javascript - 自动运行功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54029059/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com