Google スプレッドシートの以前の日付の行を表示にする

google スプレッドシートのE列に日付を入力し、
2日前以前の行を非表示にしたく、
下記のコードを作成しましたが、
エラーが出てしまいます。
「エラー Exception: Those rows are out of bounds.」

初心者のため色々ググってはみましたが、
解決できません。。
どの様に修正すればいいでしょうか><

作成しましたコードは下記です

function HideRowsBeforeToday() { const ss = SpreadsheetApp.getActiveSpreadsheet(); const s = ss.getSheetByName('シート1'); // シート名で指定 const values = s.getRange('E:E').getValues(); //E列に日付けが入っているので、配列で取得。 const today = new Date(new Date().setHours(0, 0, 0, 0)); //本日の0時の日付を作成 //後続でIndexOfするので、それぞれ文字列にする。 const arrayDateToString = values.map(String); const todayToString = Utilities.formatDate(today, 'JST', "E MMM dd yyyy HH:mm:ss 'GMT'Z '(Japan Standard Time)'"); //今日の日付のindexを取得 const indexOfToday = arrayDateToString.indexOf(todayToString); //1行目から前日までの行を非表示する。 s.hideRows(1, indexOfToday- 2); }

コメントを投稿

0 コメント