Google Scripts 功能不做任何事情(Google Script 绑定到 Google Sheets)
Posted
技术标签:
【中文标题】Google Scripts 功能不做任何事情(Google Script 绑定到 Google Sheets)【英文标题】:Google Scripts function not doing anything (Google Script tied to Google Sheets) 【发布时间】:2018-05-30 03:40:00 【问题描述】:我正在尝试制作的骰子辊板上有此代码。在第 1 列中,我输入了使用的骰子数量,在第 3 列中,我输入了使用的骰子类型(d4 是 4,d6 是 6,d8 是 8 等),在第 5 列中,我'正在放置内部修饰符(每个骰子的修饰符),在第 7 列中,我正在放置外部修饰符(所有内容都滚动后的整体修饰符)。
在第 9 列中,所有内容都应该合并,如下面的代码所示...但是工作表本身没有发生任何事情。
注意:没有列出错误,它似乎运行正常,但没有显示任何内容。
快速编辑,为了完整起见,我用'替换了所有“实例”,没有发生任何事情,我想,但我有点新哈哈
function onEdit() // Column 7
var ss = SpreadsheetApp.getActiveSpreadsheet(); // Spreadsheet
var sheeta = "Rolls";
var sheet = ss.getSheetByName(sheeta); // Active sheet
var numberrange = sheet.getActiveCell();
numberrange = (numberrange.getRow(),1);
var typerange = (numberrange.getRow(),3);
var modrange = (numberrange.getRow(),5);
var outermodrange = (numberrange.getRow(),7);
var finalrange = (numberrange.getRow(),9);
var results = "=" + numberrange.getValue() +"*(TRUNC(RAND()*(" + typerange.getValue() + "-1)+" + modrange.getValue() + "))+" + outermodrange.getValue(); // =1*(TRUNC(RAND()*(6-1)+0))+0
finalrange.setValue(results);
【问题讨论】:
【参考方案1】:这不是范围numberrange = (numberrange.getRow(),1);
,而这只是一个 (X,Y)。
我不知道你为什么没有提到,我认为你在执行脚本时一定会出错。
要将其转换为范围,您应该执行类似 numberrange = sheet.getRange(numberrange.getRow(),1);
这里finalrange.setValue(results);
结果是我猜的公式,所以请使用finalrange.setFormula(formula)
函数。
如果这不能解决您的问题或您有任何疑问,请告诉我。
【讨论】:
您的第一点效果很好,谢谢!第二个,我一直在使用 setValue 因为我将几个不同的字符串一起添加到一个公式中。它有效,但不知道 setFormula 是否也有效。以上是关于Google Scripts 功能不做任何事情(Google Script 绑定到 Google Sheets)的主要内容,如果未能解决你的问题,请参考以下文章
Multiprocessing.Pool.Map不做任何事情
ListView onItemClickListener 不做任何事情
OpenCV destroyWindow() 不做任何事情。