3

Google スプレッドシートの Google アプリ スクリプトを書いていますが、問題が発生します。値が他のセルによって参照されているセルによって「onEdit」機能をトリガーしようとしました。ただし、うまく機能していないようです。たとえば、A セルの値は B セル (A の値は "='B'") によって参照され、B セルの値を変更すると、A セルはそれに応じて変更されますが、onEdit 関数のトリガーに失敗します。セルの。スプレッドシートが自動で行った変更がonEdit機能をトリガーするイベントではないためではないかと考えています。

この問題を解決するための他の解決策を知っている人はいますか?

前もって感謝します!

4

2 に答える 2

3

onEditセルが更新されるたびに実行されます(想定どおり)。上記のロジックを使用して、onEditどのセルが変更されたかを確認するためにイベントにチェックを設定することは機能しますか?変更された場合は、変更されBた論理的な仮定も行うことができますAか?

function onEdit(event)
{
  // 'event' contains information about the edit that took place
  // Here, we read the 'source' and get the active range (our changed cell)
  // We then pull out the string form of the notation to get the cell that changed
  var changedCell= event.source.getActiveRange().getA1Notation();
  Browser.msgBox(changedCell)
  if (changedCell == 'B1') {
    // If the changed cell is the one that affects A, do something
    Browser.msgBox('You changed B1, and this will affect A');
  }
}
于 2012-12-20T15:23:45.297 に答える
0

前述のように、onEdit はセル A ではなくセル B に対してトリガーされます。これを使用してセル A を読み取るか、毎分トリガーされてセル A を読み取る関数を使用できます。

于 2012-12-20T08:26:56.283 に答える