、およびProduct Request Form (Responses)
というラベルの付いた 3 つのシートで構成されるGoogle スプレッドシートがあります。シートには 、 、 の 3 つの列があります。Form Responses
Clifford
Jim
Form Responses
timestamp
ProductArtist
ProductLabel
下のセルの値に基づいて、行全体をいずれかClifford
またはシートに移動/カットしたいと思います。たとえば、セルの値が の場合、行を に移動したい場合、セルの値が の場合、その行を に移動したいです。Jim
ProductLabel
Warner
Clifford
Universal
Jim
Form Responses
また、誰かがフォームを完成させてシートにデータが入力されたらすぐにそれらを移動させることも非常に便利です。
function onEdit(event) {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var s = event.source.getActiveSheet();
var r = event.source.getActiveRange();
if(s.getName() == "Form Responses" && r.getColumn() == 6 && r.getValue() == "Warner") {
var row = r.getRow();
var numColumns = s.getLastColumn();
var targetSheet = ss.getSheetByName("Clifford");
var target = targetSheet.getRange(targetSheet.getLastRow() + 1, 1);
s.getRange(row, 1, 1, numColumns).moveTo(target);
s.deleteRow(row);
}
}
「フォーム送信時」スクリプトの書き方を理解するのはまだ難しいと思います。セルの値が編集されたときに機能する同様のスクリプトを見つけることができましたが、フォームの送信時に行が作成されたときには機能しません。