this solutionが見つかりましたが、私のシート上で動作させるのに苦労しています。Google Apps Script - 1か月より古い行を非表示にする
この質問を送信したユーザーには3行のヘッダー行があり、スクリプトは4行目と4行目のみで動作するようにしていました。私は1つのヘッダを持っているので、2行目と2行目で動作するスクリプトが必要です。
私は行1だけを残していますが、行2と行3を隠すだけです。どこが間違っているのか分かりません。
function onOpen() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var menuItems=[{name: 'HideRows', functionName: 'hideRows'}];
ss.addMenu('Hide Rows', menuItems);
};
function hideRows() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var s = ss.getSheetByName("Responses");
var v = s.getRange("B:B").getValues();
var today = new Date();
var m = today.getMonth();
for(var i=3;i<v.length;i++)
if(v[i][0]=="" || v[i][0].getMonth()>=m) break;
if(i>1) s.hideRows(2,i-1)
};
ETAは:ここに私のシート/スクリプトへのリンクです:https://docs.google.com/spreadsheets/d/1PkB1_hlJoI-iFYTAN8to_ES9R8QyUxEgPsWtSTUmj8U/edit?usp=sharing