我需要你帮我解决这个问题。我的Google电子表格上需要一个脚本。
我需要脚本完全按照 CTRL + A , CTRL + D 执行操作。
所以它会根据第一行自动填充整个页面。
就细节而言。
假设有两张纸,Sheet1和Sheet2。
现在Sheet2是一个数据库。所以每个单元格和行都有简单的值/文本。
在Sheet1中,我在第1行的每个单元格中都有最简单的公式。
..Column 1....Column 2....Column 3...and so on
=Sheet2!A1, =Sheet2!B1, =Sheet2!C1,
因此,当您选择第一行时,抓住点并向下拖动它会将公式填充到下面的行中,它们就像
=Sheet2!A1, =Sheet2!B1, =Sheet2!C1,
=Sheet2!A2, =Sheet2!B2, =Sheet2!C2,
=Sheet2!A3, =Sheet2!B3, =Sheet2!C3,
所以当你按 CTRL + A 时,它会选择整个Sheet1然后按 CTRL + D 它会将公式填充到该工作表中的每一行。
我的目标是让脚本执行此操作。
到目前为止我写了
function f5(){
var sheet = SpreadsheetApp.getActiveSheet();
var allData = sheet.getDataRange();
var range = sheet.getRange(1,1,allData.getNumRows(),7)
range.activate();
};
选择所需的范围,但我不认为这是正确的方法。我也在考虑按键模拟,但无法找到任何文档说这可以做到。
答案 0 :(得分:4)
以下内容应该有效:
var oneRowCopy = sheet.getRange(1,1,1, sheet.getLastColumn());
var targetRows = sheet.getRange(2,1,sheet.getLastRow()-1, sheet.getLastColumn());
oneRowCopy.copyTo(targetRows);