1行目を非表示にする
コード.gs
function hiderow() { var sh = SpreadsheetApp.getActiveSheet(); sh.hideRows(1); }
1列目を非表示にする
コード.gs
function hidecol() { var sh = SpreadsheetApp.getActiveSheet(); sh.hideColumns(1); }
行と列の非表示を解除する
ここではすべての行と列を取得しました。
var last_row = sh.getRange("A:A").getLastRow();
var last_col = sh.getRange("1:1").getLastColumn();
var range = sh.getRange(1, 1, last_row, last_col);
コード.gs
function unhide() { var sh = SpreadsheetApp.getActiveSheet(); var last_row = sh.getRange("A:A").getLastRow(); var last_col = sh.getRange("1:1").getLastColumn(); var range = sh.getRange(1, 1, last_row, last_col); sh.unhideRow(range); sh.unhideColumn(range); }
A列で0の行だけを非表示にする
valuesを数値にして、厳密等価演算子 === で0と比較しました。
(等価演算子 == だと空欄もtureを返してしまうため)
if (parseInt(values[i], 10) === 0)
コード.gs
function hiderow_0() { var col = "A"; var sh = SpreadsheetApp.getActiveSheet(); var range = sh.getRange(col + ":" + col); var values = range.getValues(); var last_row = sh.getLastRow(); for (var i = 0; i < last_row; i++) { if (parseInt(values[i], 10) === 0) { sh.hideRows(i + 1); } } }
1行目が0の列を非表示にする
hiderow_0と同様、厳密等価演算子 === で0と比較しました。
ここではvalues[i]では動かないため、values[0][i]にしました。
if (parseInt(values[0][i], 10) === 0)
コード.gs
function hidecol_0() { var row = 1; var sh = SpreadsheetApp.getActiveSheet(); var range = sh.getRange(row + ":" + row); var values = range.getValues(); var last_col = sh.getLastColumn(); for (var i = 0; i < last_col; i++) { if (parseInt(values[0][i], 10) === 0) { sh.hideColumns(i + 1); } } }