我有一些代码可以从另一个文件中的源工作表中提取一系列数据,并将其复制到当前文件中的新工作表中。它曾经可以工作,但是现在源范围超过1000行,该复制完全失败且没有错误(该复制不会发生,并且代码会继续前进)。似乎是因为我的目标工作表只有1000行,并且尝试复制大于该行的内容会导致它失败。
“执行记录”并没有使我了解它为什么失败。作为测试,我将源数据缩短到少于1000行,然后再次工作。
我复制范围的代码块如下:
// COPY DATA FROM SOURCE SPREADSHEET TO TEMP SHEET IN ACTIVE SPREADSHEET
var SRange = source_s.getDataRange();
var A1Range = SRange.getA1Notation();
var SData = SRange.getValues();
temp_s.getRange(A1Range).setValues(SData);
temp_s 是目标表。 source_s 是源工作表。
我想两种解决方案都可以,所以我可以将1000多行复制到我的目标表中:
答案 0 :(得分:0)
我将其发布为评论,但也应该作为答案。
我已经将目标表上的范围声明为"A:J"
,它将选择这两列的所有行。实际上就是A1:J1000
。如果您的源少于1000行,那行得通,但是一旦源大于目标行,它就会失败。
要解决这个问题,我使用lastrow = source_s.getLastRow()
找到了源数据的最后一行,然后将目标范围命名为"A1:+J"+lastrow
。复制有效。