【GAS】同じブック内のいくつかのシートに同じスクリプトを利かせたいです。

タスク管理がしたいです。
スクリプトを使って「タスク」シートから「タスク完了」シートに転記するスクリプトを書きました。
このスクリプトを同じブック?内の「田中のタスク」を「田中のタスク完了」
「鈴木のタスク」を「鈴木のタスク完了」「林のタスク」を「林のタスク完了」と
色々なシートに反映させたかったのですが、うまくいきませんでした。
(そもそもシートごとにコードが記述出来ると思っておりました)
本当に初心者でユーチューブを見ながら見よう見まねで書いたので、
検索したり、var ssをashに変えたりシート名を増やしたりしてみましたが
お手上げでした。どなたか、わかる方いらっしゃいますでしょうか。

GAS

var ss = SpreadsheetApp.getActiveSpreadsheet(); var main_s = ss.getSheetByName('タスク'); var comp_s = ss.getSheetByName('完了タスク'); function comp(){ var select_row = main_s.getActiveCell().getRow(); var insert_row = comp_s.getRange('B:B').getValues().filter(String).length + 2; var max_row = main_s.getMaxRows(); comp_s.getRange(insert_row,2,1,25).setValues( main_s.getRange(select_row,2,1,25).getValues() ); main_s.getRange(select_row,2,max_row - select_row,25).setValues( main_s.getRange(select_row + 1,2,max_row - select_row,25).getValues() ); } function reset(){ var select_row = comp_s.getActiveCell().getRow(); var insert_row = main_s.getRange('B:B').getValues().filter(String).length + 2; var max_row = comp_s.getMaxRows(); main_s.getRange(insert_row,2,1,25).setValues( comp_s.getRange(select_row,2,1,25).getValues() ); comp_s.getRange(select_row,2,max_row - select_row,25).setValues( comp_s.getRange(select_row + 1,2,max_row - select_row,25).getValues() ); }

コメントを投稿

0 コメント