メインコンテンツへスキップ
見出し画像

GAS超初心者講座2:一覧表から未対応だけを抜き出す

    はじめに

    前回はA1を読んでB1に書きました。
    今回は、一覧表から「未対応」だけを別シートへ抜き出すGASです。


    画像
    ※この画像は、記事内容を説明するためにイメージとして作成したものです。
    実際の画面・環境とは異なる場合があります。

    まず表の形を決める

    `一覧` と `未対応リスト` を用意します。

    A列: 受付日
    B列: 担当者
    C列: 内容
    D列: ステータス
    2026/06/11 | 鈴木 | 見積書を確認する | 未対応
    2026/06/11 | 担当A | 請求書を送る | 対応済み
    2026/06/11 | 鈴木 | 返信内容を確認する | 未対応

    AIへの頼り方として、表の形を先に言葉にすると依頼が安定します。

    Googleスプレッドシートで、A列が受付日、B列が担当者、C列が内容、D列がステータスの一覧表があります。
    AI依頼文例: GAS初心者向けに、「未対応」の行だけを別シートへ抜き出す流れを整理してください。


    画像
    ※この画像は、記事内容を説明するためにイメージとして作成したものです。
    実際の画面・環境とは異なる場合があります。

    未対応だけを抜き出すコード

    Apps Scriptに貼ります。

    function pickPendingRows() {
      const spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
      const sourceSheet = spreadsheet.getSheetByName('一覧');
      const outputSheet = spreadsheet.getSheetByName('未対応リスト');
    
      const values = sourceSheet.getDataRange().getValues();
      const header = values[0];
      const pendingRows = values.slice(1).filter(row => row[3] === '未対応');
    
      outputSheet.clearContents();
      outputSheet.getRange(1, 1, 1, header.length).setValues([header]);
    
      if (pendingRows.length > 0) {
        outputSheet
          .getRange(2, 1, pendingRows.length, header.length)
          .setValues(pendingRows);
      }
    }

    `getDataRange().getValues()` で表全体を読み、`filter()` で `row[3] === '未対応'` の行だけ残します。
    配列は0番から数えるのでD列は3です。AIには「D列の指定は合っていますか」とレビューしてもらいます。


    画像
    ※この画像は、記事内容を説明するためにイメージとして作成したものです。
    実際の画面・環境とは異なる場合があります。

    実行して確認する

    関数 `pickPendingRows` を実行し、`未対応リスト` に未対応の行だけが出れば成功です。
    出ない場合は、D列が `未対応` か確認します。

    エラー時は、エラー文をそのままAIへ渡すのが早いです。

    次のGASでエラーが出ました。私はGAS初心者です。
    原因候補と最初に確認する場所を順番に教えてください。
    
    エラー文:
    ここに表示されたエラーを貼る
    
    コード:
    ここにコードを貼る

    動いたあとも「次に直すならどこですか」と聞くと、空白対策やシート名チェックに気づけます。


    画像
    ※この画像は、記事内容を説明するためにイメージとして作成したものです。
    実際の画面・環境とは異なる場合があります。

    まとめ

    • `getDataRange().getValues()` で表全体を読む

    • `values[0]` で見出し行を取り出す

    • `filter()` でステータスが「未対応」の行だけを残す

    • `setValues()` で別シートへ書き込む

    • AIには、設計、エラー確認、レビューの順で頼る


    【今日の私のひとこと】

    次は、「GAS超初心者講座3:未対応だけ、メールとSlackに自動リマインドする方法」に進みます。

    #GoogleAppsScript #GAS #業務効率化 #スプレッドシート #note #GAS初心者 #AppsScript #GoogleWorkspace #自動化入門 #一覧表管理 #未対応管理

     
     
    高校教員(数学)|2歳児のパパ AIや学び直しを使って、自分でできることを増やしていく実践記録。AI・GAS・小規模アプリ、仕事の改善、お金の学び、子育てと習慣化について、実際に試して分かったことを発信しています。

    あなたへのおすすめ