編集:この質問は私が質問をすることを禁止されました...私は何を間違えましたか?!本当にわかりません。
編集:解決策これはonEdit()関数である必要がありました。@cooperありがとうございます。
キーボードに頭をぶつけています。助けてください。
これは単純なはずです...しかし、私はエラーを受け取り続けます:
TypeError:onChange(checkBoxes:5:20)で未定義のプロパティ'getNumColumns'を読み取ることができません
目標は、チェックボックスをクリックして日付スタンプを取得することですが、次に実行する関数を決定するために列ヘッダー(行4)もチェックする必要があります...しかし、必要なため、そこまで到達できません。関数をトリガーしたセルの列を知っています。
function onChange(e) {
const range = e.range;
Logger.log(range.getNumColumns());
};
/**Trigger:
Head:= Deployment
Event:= From spreadsheet - On change
Function:= onChange
Error rate:= 100% */
技術的には使用できますactivecell
が、ユーザーの信頼性が低いのではないかと心配しています。ユーザーがcol:1のチェックボックスをオンにしてからcol:2をクリックすると、activecell
col:1または2が返されます。
これを解決するためにさまざまな組み合わせを試しましたが、「未定義のプロパティ'getNumColumns'を読み取れません」と表示されるたびに
私は以下を試しました:
e.range.columnStart
function onEdit(e) {
e.range is the location of the edit it could be more than one cell if it's something like a paste.
e.range.getSheet() is the sheet
e.range.columnStart is the column of the edited cell
e.range.rowStart is the row of the edited cell
e.range.columnEnd is the last column in e.range
e.range.rowEnd is the last row in e.range
e.source is the active spreadsheet
e.oldValue is the value before the change
e.value is the value after the edit
Logger.log(JSON.stringify(e)); //will provide a description of the entire event object
}
承認レベルやユーザー情報のようなものもあります
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加