多くの Google スプレッドシート スクリプトは、ユーザーがスプレッドシート内のデータを変更するときに、onEdit トリガーを利用して特定のアクションを実行します。ただし、複数の onEdit 関数が独立して動作する必要がある場合、競合が発生する可能性があります。
このような競合を回避するには、onEdit2 などの onEdit 関数用に個別のトリガーを作成するよりも、関数を単一の onEdit 関数にマージする方が効率的です。 if ステートメントを使用して、目的のアクションを区別します:
function onEdit(e){ if (condition1) { // Execute actions for condition1 } else if (condition2) { // Execute actions for condition2 } }
提供されたスクリプトでは、次のコードを使用して、onEdit 関数と onEdit2 関数を 1 つの onEdit 関数にマージできます:
function onEdit(e){ onEdit1(e); onEdit2(e); }
ここでは、パラメータ e が onEdit1 関数と onEdit2 関数の両方に渡され、編集イベントに関する情報を含むイベント オブジェクトに確実にアクセスできるようになります。
このアプローチにより、複数のトリガー関数を同じスクリプト内で実行することができます。
関連リソース:
以上がGoogle スプレッドシートで複数の onEdit トリガー関数を結合する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。