[英]Logging a Range in Google Apps Script
我是使用Google App脚本的新手,但我并不完全了解“ Logger.log”命令的工作方式。
我正在使用Google App脚本作为电子表格的绑定脚本。 以下是我正在处理的代码的摘要:
function tasks() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName("Task List");
sheet.activate();
var hi = 23;
Logger.log(hi);
Logger.log("The range is " + sheet.getRange(1, 1, 10, 1));
}
当我运行代码时,这将显示在记录器中:
[16-06-02 00:56:12:129 EDT] 23.0
[16-06-02 00:56:12:130 EDT] The range is Range
为什么为sheet.getRange函数而不是数据数组显示“ Range”。
也有人可以解释一下“ getRange”和“ getDataRange”之间的区别。
您正在记录范围对象,因此记录器会告诉您它就是这样。 Google Apps脚本的文档非常好。 特别是,对于您的情况,您必须查看getRange() 返回的内容
因此,如果您想记录实际范围,可以使用getA1Notation()来告诉您范围。 在这种情况下,由于它从第1行第1列开始,并且是1行且长度为10列,因此它将为A1:J1。 如果您希望查看特定范围内的值,可以使用getValues(),它将返回一个2D数组。
记录器将按照您的期望记录字符串和数字,数组也将以字符串格式输出
Range对象是某个范围内的指针,例如A1:A10。 这与范围(一组条目)中的一组值不同。 要从某个范围获取值,请使用getValues
方法:
Logger.log("The values are " + sheet.getRange(1, 1, 10, 1).getValues());
第二个问题是: 文档对getDataRange的作用很清楚:它为您提供以A1开头并一直扩展到工作表中有数据的范围。 如果仅将一些数据放在B5和D2中,而在其他任何地方,则DataRange为A1:D5。 使用getRange
您可以指定所需范围。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.