前提・実現したいこと
当方初心者です。
Googleスプレッドシートの業務実施報告書でタイムスタンプをつける様式を作成したいと考えています。
【プルダウンリストから選択してテキストが表示されたら右隣のセルにタイムスタンプを表示する】
というスクリプトをこちらで教わりながら作成したのですが、同じシート上の別なセルに、
【プルダウンリストから選択してテキストが表示されたら「その真下のセル」にタイムスタンプを表示させる】
という処理も同じシートで行いたいのです。具体的には
①「(E25:E32)セルに入力したら、(F25:F32)セルにタイムスタンプを表示する」(ここまでできています)
②「(C37:G37)(C42:G42)(C51:H51)… セルに入力したら、(C38:G38)(C43:G43)(C52:H52)… にタイムスタンプを表示する」(ここがどうにもできずに困っています。。。)
どなたかお知恵をお借りしたくお願いいたします。
該当のソースコード
function onEdit(e) {
//操作されたセルの情報 シート名、行、列を取得
var sheet = e.range.getSheet().getSheetName();
var r = e.range.getRow();
var c = e.range.getColumn();
var targetSheets = ["1","2","3"] //実行したいシートを選択
if(targetSheets.includes(sheet)){
}else{
return
}
if(c != 5 | r >=33 | r <=24 ) return;
// e列(5列目)以外と、24行目以前と33行以降を除外
if(!e.value | e.value == 'FALSE'){
e.range.getSheet().getRange(r, c+1).clearContent();
// チェックを外したり空欄とした際に日時を消去
return;
}
e.range.getSheet().getRange(r, c+1).setValue(new Date());
//シート側で表示設定を日時とする
}
試したこと
発動させたい範囲だけを(e25:e32)のように指定するようにしたくて色々してみましたがうまく反応しませんでした。。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/12/15 01:29