本文介绍了找不到方法getRange(Number,Number)?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我不能设置变量将数字返回到Google Sheets中K列下的最后一行。代码在我已将exampleText定义为变量的最后一行.setValues(exampleText)失败。

我使用过设置变量的不同方法,包括为列设置变量。

我收到以下错误:

前三行是我以前尝试过的示例。

Column = 'K'
range = ss.getRange(LastRow, Column)
range.setValue(exampleText)

var ss = SpreadsheetApp.getActiveSpreadsheet()

var column = 11

var lastRow = ss.getLastRow();

ss.getRange(lastRow, column)
.setValues(exampleText)

推荐答案

问题:

  • getRange是在Spreadsheet类和Sheet类上都可用的方法。

  • 但是,只有getRange(string)在电子表格(Ss)上可用。因此,您可以使用ss.getRange('Sheet1!A1:B4')

  • getRange(number,number)仅在工作表上可用。因此,您可以使用ss.getActiveSheet().getRange(1,4)

  • Sheet类还接受此方法的其他变体,但Spreadsheet类不接受,它只接受String作为唯一参数。

  • 有时,您还会收到

    第一个参数是字符串的原因是JavaScript引擎试图匹配实际的函数调用签名:getRange(string)。它将第一个数字转换为字符串,但是它不知道如何处理参数(数字)的睡觉。由于没有与Spreadsheet类上的调用(String,Number,Number,Number)匹配的方法签名,因此引发错误。

解决方案:

按照官方文档中的说明对目标类使用适当的方法。大多数情况下,您必须使用Sheet类。

SpreadsheetApp.getActive().getSheets()[0].getRange(1,1)

这篇关于找不到方法getRange(Number,Number)?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-11 12:17