Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google apps script 如何在一个单元格发生更改时更新另一个单元格?_Google Apps Script_Google Sheets - Fatal编程技术网

Google apps script 如何在一个单元格发生更改时更新另一个单元格?

Google apps script 如何在一个单元格发生更改时更新另一个单元格?,google-apps-script,google-sheets,Google Apps Script,Google Sheets,我创建了一个函数getRow() 然后,我创建了另一个函数gtBF(),它从不同的工作表返回特定范围的值。第二个函数范围的行取决于第一个函数 基本上,C1的值是根据A1的值从另一张图纸复制的 这两项职能都发挥了作用 目前,每次更改A1的值时,我都会尝试进行C1更新。我该怎么做 函数getBF(){ var row=getRow(); var sheetlampDP=SpreadsheetApp.getActiveSpreadsheet().getSheetByName(“Lamp DP”);

我创建了一个函数
getRow()

然后,我创建了另一个函数
gtBF()
,它从不同的工作表返回特定范围的值。第二个函数范围的行取决于第一个函数

基本上,C1的值是根据A1的值从另一张图纸复制的

这两项职能都发挥了作用

目前,每次更改A1的值时,我都会尝试进行C1更新。我该怎么做

函数getBF(){ var row=getRow(); var sheetlampDP=SpreadsheetApp.getActiveSpreadsheet().getSheetByName(“Lamp DP”); sheetlampDP.activate(); var bfValue=sheetlampDP.getRange(第12行).getValue(); 返回值; } 函数getRow(){ var row=SpreadsheetApp.getActiveSpreadsheet().getSheetByName(“Sheet7”).getRange(1,1).getValue(); 返回行; }
实现这一点的最有效方法是将
getBF()
更改为电子表格自定义函数,该函数接收
A1
(或任何其他单元格)的值作为参数
,而不是计算它。这样,只要
A1
发生更改,电子表格服务就会重新调用它

因此,
C1
应包含:

=getBF( A1 )
…您的功能变成:

函数getBF(行){
var sheetlampDP=SpreadsheetApp.getActiveSpreadsheet().getSheetByName(“Lamp DP”);
var bfValue=sheetlampDP.getRange(第12行).getValue();
返回值;
}