Google脚本复制/粘贴/清除删除粘贴的单元格

时间:2020-09-04 15:36:00

标签: google-apps-script google-sheets google-sheets-formula

我正在Google表格中编写一个动作脚本来复制一个单元格,然后将其粘贴到另一个单元格中,然后理想情况下清除第一个单元格。我有复制和粘贴功能,但是当它在复制字段上运行清除时,它也会清除粘贴到其中的单元格。

这是我的代码:

var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName("Sheet1");

function copyAllInRange(){
  var copyRange = sheet.getRange("K3");
  var pasteRange = sheet.getRange("K2");
  
  copyRange.copyTo(pasteRange);
  copyRange.clear();
};

var run = copyAllInRange()

我要去的是:

  1. 复制K3的内容
  2. 粘贴K2中的内容
  3. 清除K3

正在清除K3的同时,也在清除K2。

1 个答案:

答案 0 :(得分:1)

问题:

  • 在您的代码var run = copyAllInRange()中是一个全局变量。声明该名称后,它只会首次执行copyAllInRange()函数。

  • 然后,您还可以从脚本编辑器中手动执行copyAllInRange(),因此您可以两次执行它。第二次执行此功能时, K3 已被第一次执行清除,即,粘贴单元格 K3 < / strong>更改为 K2 ,结果两个都被清除了。


解决方案:

尝试一下:

  function copyAllInRange(){
  
    var ss = SpreadsheetApp.getActiveSpreadsheet();
    var sheet = ss.getSheetByName("Sheet1");
    var copyRange = sheet.getRange("K3");
    var pasteRange = sheet.getRange("K2");
  
    copyRange.copyTo(pasteRange);
    copyRange.clear();
}