実現したいこと
指定範囲にて特定文字が入った列のみを非表示にしたい。
前提
スプレッドシートにて特定の値と一致した場合、その値がある列のみを非表示にしたいです。
条件と一致する列を非表示にする記述がうまくできておりません。
- 例)1行目の中で「空欄」のセルがある列のみを非表示にする。
試したこと
- A列の範囲内にて、「空欄」のセルがある列のみを非表示にする。
のように、指定値に一致する「行」を非表示にする方法はうまくいったのですが、「列」の非表示方法がわかっておりません。
実現したいイメージとしては以下の「列」非表示バージョンです。
10行目にてgetRange
の範囲を「1行目」に変更し、値も取得できていることは確認できたのですが、
hideRows
を hideColumns
に変更しただけでは特に何も変化はありませんでした。
他にも手を加える必要があるかと思うのですが、知識がなく改変すべき内容がわからない状態です。
JavaScript
1function hidden() { 2 3 var sh = SpreadsheetApp.getActiveSpreadsheet(); 4 var objSheet = sh.getSheetByName("シート1"); 5 6 var key = ""; 7 var col = "A"; 8 9 //A列が空白なら行を非表示 10 var values = objSheet.getRange(col + "1:" + col + objSheet.getLastRow()).getValues(); 11 for (var i = 0; i < values.length; i++) { 12 if (values[i][0] === key) { 13 objSheet.hideRows(i + 1); 14 } 15 } 16}
補足情報

回答1件
あなたの回答
tips
プレビュー