更新时间:2022-10-15 15:58:47
遗憾的是,没有用于检索内置函数执行时间的测量工具。这已经被@Rubén评论了。所以我想到了解决方法。如何解决以下问题?
setValue()
。所以我用 onEdit()
。 func1 ()
导入一个公式,您希望通过触发器启动的脚本来测量执行时间。 getValue()
的每次调用成本,发现它是关于0.0003秒。所以我认为可以使用它。 函数func1(范围,公式){
range.setFormula(公式);
函数func2(范围){
var d = range.getValue();
while(r == d){
var r = range.getValue();
function onEdit(){
var formula ='###内置函数###'; //请设置您想要测量执行时间的内置函数。
var label =内置函数的执行时间。;
var ss = SpreadsheetApp.getActiveSheet();
var cell = ss.getActiveCell();
var range = ss.getRange(cell.getRow(),cell.getColumn());
func1(范围,公式);
console.time(label);
func2(范围);
console.timeEnd(label);
}
getValue()
处发生错误。 如果这对您有用,我很高兴。
Are there methods to measure the execution time when built-in functions completed for Spreadsheet? When I use several built-in functions (For example, IMPORTHTML and IMPORTXML), if I know the average execution-time, it is easy for me to use and design data sheet.
I measure it of custom functions using this script.
function myFunction() {
var start = new Date();
// do something
var end = new Date();
var executiontime = end - start;
}
Thank you so much for your time and advices.
Unfortunately, there are not measurement tools for retrieving the execution time of built-in functions. This has already been commented by @Rubén. So I thought of about the workarounds. How about the following workaround?
setValue()
. So I used onEdit()
.func1()
imports a formula that you want to measure the execution time by the script launched by the trigger.func2()
, after set the formula, the measurement is started. The confirmation when built-in function was completed is carried out using loop.
getValue()
, it was found that that was about 0.0003 s. So I thought that this can be used.
function func1(range, formula){
range.setFormula(formula);
}
function func2(range){
var d = range.getValue();
while (r == d) {
var r = range.getValue();
}
}
function onEdit(){
var formula = '### Built-in function ###'; // Please set the built-in function you want to measure the execution time.
var label = "Execution time for built-in functions.";
var ss = SpreadsheetApp.getActiveSheet();
var cell = ss.getActiveCell();
var range = ss.getRange(cell.getRow(), cell.getColumn());
func1(range, formula);
console.time(label);
func2(range);
console.timeEnd(label);
}
getValue()
.
If this was useful for you, I'm glad.