首页 > 解决方案 > 如何从 Google 表格中的单元格中获取值,用作 Google 脚本中的数字变量

问题描述

我正在尝试使用 Cell A3 的值作为变量来指定特定数组的确切大小。下面的代码不起作用,为什么?

A3 是 =COUNTA(B2:VF2)-1,当前计算结果为 446

function RangeCopyToLog() {
  var spreadsheet = SpreadsheetApp.getActive();
  var destSheet = spreadsheet.getSheetByName("Xp Log");
  var lastRow = destSheet.getLastRow();
  var copyColEnd = destSheet.getRange('A3') + 1 //Problem is here
  destSheet.insertRows(lastRow + 1,1);
  destSheet.getRange(1,3,1,copyColEnd).copyTo(destSheet.getRange(34,3,1,copyColEnd), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
 // destSheet.getRange('D1:D30').copyTo(destSheet.getRange(lastRow + 1,1), SpreadsheetApp.CopyPasteType.PASTE_NORMAL, true);
 // destSheet.getRange('D1:D30').clearContent();
};

出现的错误是:“无法将 Range1 转换为(类)。”

标签: javascriptgoogle-sheetsgoogle-sheets-macros

解决方案


.getRange() 只返回范围,而不是值。更改此行

var copyColEnd = destSheet.getRange('A3') + 1 

var copyColEnd = destSheet.getRange('A3').getValue() + 1 

推荐阅读