每次更新另一个值时将值粘贴到新单元格中?
Pasting a value into a new cell each time another is updated?
我希望每周有 2 个单元格更新它们的值。每次这些单元格更新它们的值时,我希望它们也被打印到不同 sheet 上的另外两个单元格上。每周,打印它们的这些单元格都会向下移动一个。例如第 1 周,这两个单元格打印在 A1 和 B1 中。第 2 周它们打印在 A2 和 B2 中,依此类推。
我知道如何在 Excel 中执行此操作,但不知道如何将其更改为 Google 表格/脚本。
假设:
- 您的新输入在
input!A1
和 input!B1
中;和
- 您的输出将在
output!A
和 output!B
内完成。
您可以通过单击菜单上的工具并进入脚本编辑器来编写脚本。
然后写这个函数:
function writeData() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var input = ss.getSheetByName("input")
.getRange(1, 1, 1, 2)
.getValues();
var outputSheet = ss.getSheetByName("output");
var numRows = outputSheet.getLastRow();
outputSheet.getRange(numRows + 1, 1)
.setValue(input[0][0]);
outputSheet.getRange(numRows + 1, 2)
.setValue(input[0][1]);
}
接下来,设置触发器。在脚本编辑器中,在资源下,select 当前项目的触发器,然后设置您的触发器。如果您希望它每周 运行,请使用时间驱动的触发器。您还可以在每次编辑时将电子表格驱动的触发器设置为 运行。保存一切。
如果您不想使用自动触发器,可以通过在电子表格的菜单栏上添加一个项目来执行writeData()
功能:
function onOpen() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var menuEntries = [];
menuEntries.push({name: "Write data", functionName: "writeData"});
ss.addMenu("Custom functions", menuEntries);
}
保存,如果您刷新电子表格,您将在菜单栏上看到一个新项目。
我希望每周有 2 个单元格更新它们的值。每次这些单元格更新它们的值时,我希望它们也被打印到不同 sheet 上的另外两个单元格上。每周,打印它们的这些单元格都会向下移动一个。例如第 1 周,这两个单元格打印在 A1 和 B1 中。第 2 周它们打印在 A2 和 B2 中,依此类推。
我知道如何在 Excel 中执行此操作,但不知道如何将其更改为 Google 表格/脚本。
假设:
- 您的新输入在
input!A1
和input!B1
中;和 - 您的输出将在
output!A
和output!B
内完成。
您可以通过单击菜单上的工具并进入脚本编辑器来编写脚本。
然后写这个函数:
function writeData() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var input = ss.getSheetByName("input")
.getRange(1, 1, 1, 2)
.getValues();
var outputSheet = ss.getSheetByName("output");
var numRows = outputSheet.getLastRow();
outputSheet.getRange(numRows + 1, 1)
.setValue(input[0][0]);
outputSheet.getRange(numRows + 1, 2)
.setValue(input[0][1]);
}
接下来,设置触发器。在脚本编辑器中,在资源下,select 当前项目的触发器,然后设置您的触发器。如果您希望它每周 运行,请使用时间驱动的触发器。您还可以在每次编辑时将电子表格驱动的触发器设置为 运行。保存一切。
如果您不想使用自动触发器,可以通过在电子表格的菜单栏上添加一个项目来执行writeData()
功能:
function onOpen() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var menuEntries = [];
menuEntries.push({name: "Write data", functionName: "writeData"});
ss.addMenu("Custom functions", menuEntries);
}
保存,如果您刷新电子表格,您将在菜单栏上看到一个新项目。