0

Google 表格 - 在活动单元格中复制整行,然后在宏中的活动单元格下方粘贴。

简单地在活动单元格下方插入行。

function mcrPackagedPart() {
  var spreadsheet = SpreadsheetApp.getActive();
  var activeRow = spreadsheet.getActiveCell().getRow();
  var activeRange = spreadsheet.getRange("A"+activeRow+":Z"+activeRow).getValues();
    // test
  spreadsheet.getRange(activeRange).activate();
  spreadsheet.getActiveSheet().insertRowsAfter(spreadsheet.getActiveRange().getLastRow(), 1);    
  spreadsheet.getActiveRange().offset(spreadsheet.getActiveRange().getNumRows(), 0, 1, spreadsheet.getActiveRange().getNumColumns()).activate();
  spreadsheet.getRange(activeRange).copyTo(spreadsheet.getActiveRange(), SpreadsheetApp.CopyPasteType.PASTE_NORMAL, false);
};
4

1 回答 1

1

您很可能已经找到了 Google 表格的宏录制功能,因为问题上的代码。

虽然此功能可能很有用,但为了能够改进录制的宏,您应该花一些时间学习 JavaScript、Apps 脚本和电子表格服务的基础知识。如果您还没有,请阅读https://developers.google.com/apps-script/guides/sheets

下面显示了如何查看带有已编辑宏的 macros.gs 文件,以保持在活动单元格上方插入一行所需的最少行数:

/** @OnlyCurrentDoc */

function myFunction() {
  var spreadsheet = SpreadsheetApp.getActive();
  spreadsheet.getActiveSheet().insertRowsBefore(spreadsheet.getActiveRange().getRow(), 1);
};
于 2018-07-18T17:41:30.440 回答