実現したいこと
GASのonEdit(e)関数を実装したスプレッドシートにおいて
e.rangeを使用してどのセルが変更されたかを調べたい。
通常のセル変更に対しては想定通り変更されたセルが取得されるのですが
行や列の挿入時は、セルが取得されたりされなかったりして法則がつかめません。
行や列の挿入に対してe.rangeはどのようなセルを取得するかわかりますでしょうか。
前提
以下の画像のような10x10のセルにすべて「a」が入力されているスプレッドシートを準備しました。
スプレッドシートには該当のソースコードが実装されています。
- A1セルの値を「a」から「b」に変更すると想定通り「A1」がメッセージボックスに表示されます
- A1:J10セルに一括で「b」をペーストすると想定通り「A1:J10」がメッセージボックスに表示されます
- A列を選択して「右に1列挿入」すると「B1」がメッセージボックスに表示されます
- H列を選択して「右に1列挿入」するとスクリプトは動作しません
このA列とH列の判定の違いは何でしょうか。法則がつかめず困っております。
該当のソースコード
1function onEdit(e) { 2 const editedRange = e.range; 3 Browser.msgBox(editedRange.getA1Notation()); 4}
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2023/07/14 03:09