【GAS】非表示の行を一気に削除する方法(Gスプレッドシート)

基礎講座

GAS基礎講座一覧

ご訪問ありがとうございます。

Googleシートマスターのひろしです。

前回

【GAS】日付形式の設定とセル内で改行させる方法(エスケープ文字)
  • GASで日付データの表示形式を設定する方法がわかります。
  • GASで文字列を改行させる方法がわかります。
  • 今回は、とっても価値の高い方法をお伝えします。


    これを知ることであなたは、

    • 非表示の行を一気に削除できます。
    • 降順のループの使い方がわかります。

    なので、サクッとマスターして

    と答えてあげてください。

    動画はこちら

    【GAS】Googleスプレッドシート非表示の行を一気に削除する方法

    スクリプトはこちら

     

    //非表示行の削除
    function delhideline() {
      const ss = SpreadsheetApp.getActiveSpreadsheet()
      const sh = ss.getActiveSheet()
    
    
    // console.log( sh.getLastRow())
    
    // let bjude = false
    // for (i = sh.getLastRow(); i > 0; i--) {
    // let bjude = ss.isRowHiddenByUser(i)
    // console.log(i, "行め", bjude)
    // if(bjude){
    // sh.deleteRow(i)
    // }
    // }
    
      for (i = sh.getLastRow(); i > 0; i--) {
        if(ss.isRowHiddenByUser(i)){ //非表示行?
          sh.deleteRow(i) //行の削除
        }
      }
    }

     

    ポイント

    sh.getLastRow() 最終行

    ss.isRowHiddenByUser(i) 非表示の行

    sh.deleteRow(i) //行の削除

    これらを組み合わせて

    最終行からのループ内で  for (i = sh.getLastRow(); i > 0; i--) {

    先頭行から削除すると行がずれるので最終行から削除します。

     

    非表示の行の場合は、 if(ss.isRowHiddenByUser(i)){ //非表示行?

    行を削除                      sh.deleteRow(i) //行の削除

     

     

    を実現しています。

     

     

     

     

     

     

    最後までご覧いただきありがとうございます。

    つぎはこちら

    【GAS】チェックされた行を一気に削除する方法(Gスプレッドシート)
  • チェックボックスの値の取得方法がわかります。
  • チェックされた行を一気に削除する方法がわかります。
  • GAS基礎講座一覧

    コメント

    タイトルとURLをコピーしました