シートAにTo Do Listの記録があります。F欄は対応状態とします。
あるTo Doを対応完了にすると、当該の記録は自動的にシートBにコピーし保存します。
その機能は、下記のコードを考えました。
トリガーの設定は以下にご参照ください。
1. 編集>現在のプロジェクトのトリガー>新しいトリガーを追加>
2. [実行]に当該の関数名を選択
3. [イベント]に [スプレッドシートから]を選択
4. [値の変更]を選択>保存
main.gs
function main() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet_s = ss.getSheetByName("source");
var sheet_d = ss.getSheetByName("destination");
var cell_s = sheet_s.getActiveCell();
var cRow = cell_s.getRow();
var cCol = cell_s.getColumn();
var lastCol = sheet_s.getLastColumn();
var range_s;
if (cCol == 6) {
// F欄はコラム値6に対応する
if (cell_s.getValue() == "対応完了") {
range_s = sheet_s.getRange(cRow, 1, 1, lastCol);
// 参考:sheet.getRange(row, column, numRows)
range_s.copyValuesToRange(sheet_d, 1, lastCol, sheet_d.getLastRow()+1, sheet_d.getLastRow()+1);
// 参考:range.copyValuesToRange(sheet, column, columnEnd, row, rowEnd)
// sheet_d.getLastRow()+1 は、シートの尾部に対応する
sheet_s.deleteRow(cRow);
//もとの記録を削除する
}
}
}
参考
GAS>Spreadsheet>Sheet - getRange(row, column, numRows)
GAS>Spreadsheet>Range - copyValuesToRange(sheet, column, columnEnd, row, rowEnd)