复制单元格范围并粘贴到下面

时间:2017-07-25 14:39:09

标签: google-sheets

我有一个谷歌工作表名称“队列跟踪器”,并在其中一个名为“编译处置”的选项卡。我想自动选择并复制多个范围(都包含公式)并将其粘贴到下面的“n”行。其中n可以是100或1000甚至3000。

选择和复制的范围是:B3:K3,M3:V3,X3:AG3,AI3:AR3,AT3:BC3,BE3:BO3,BQ3:BZ3,CB3:CH3,CK3:CP3,CS3:CX3 ,DA3:DF3

1 个答案:

答案 0 :(得分:0)

我不相信可以使用Google Apps脚本访问多个范围选择。所以使用主动选择不会起作用。但是这会将您选择的范围视为一个范围,在该范围内我将不需要的列清空。因此,希望您不打算将其复制到已填充日期的区域。我还没有对它进行过测试,但您可以将它作为起点。这将有机会了解我们的脚本编辑器和调试器。

function copyYourRowToRange(row, numrows)
{
  var leaveBlank=['0','11','22','33','44','55','67','78','86','87','94','95','102','103'];
  var ss=SpreadsheetApp.getActive();
  var sht=ss.getActiveSheet();
  var rng=sht.getRange('B3:DF3');
  var rngA=rng.getFormulas();
  for(var i=0;i<leaveBlank;i++)
  {
    rngA[0][leaveBlank[i]]='';
  }
  var str='B' + row + ':DF' + Number(row + numrows);
  var destR=sht.getRange(str);
  var destA=destR.getValues();
  for(var i=0;i<destA.length;i++)
  {
    destA[i]=rngA[0];
  }
}