getActiveRange不返回当前选择

时间:2019-01-04 01:28:19

标签: google-apps-script google-sheets

这应该是一个简单的方法,但是我自己无法破解... 我想在活动工作表中将当前选定的单元格复制到一个名为data的数组中:

var sheet = SpreadsheetApp.getActive().getActiveSheet();
var selection = sheet.getActiveRange();
var data = selection.getValues();

以上结果导致无论实际选择了哪个单元格,数组都将获取单元格A1的内容。当我将getActiveRange()替换为getRange(2,1,10,10)可以正常工作。

任何关于为什么我无法进入当前选定单元格的线索都会受到赞赏!

3 个答案:

答案 0 :(得分:1)

我认为问题是

var sheet = SpreadsheetApp.getActive().getActiveSheet();

这是因为在“链接”两个不同对象类的方法(在本例中为“类”电子表格和“类表”)时存在某种错误。有与此getActiveSheet() returns first sheet name

相关的错误报告
  

解决方法是将以上行替换为:

var spreadsheet = SpreadsheetApp.getActive();
var sheet = spreadsheet.getActiveSheet();

答案 1 :(得分:0)

这将获得并在对话框窗口中显示活动范围。

Subject

答案 2 :(得分:0)

问题似乎出在Google一边,因为经过24小时的失败,现有代码现在可以完美运行了。您所有的版本现在也可以正常工作。

感谢您的所有帮助,不仅是现在,而且是我无数次在这里找到答案而没有发布问题的帮助!