しごと自動化レシピ

WORK RECIPE GAS

台帳メニューから未完了件数を表示する

スプレッドシートに点検用メニューを追加し、クリックすると未完了件数を表示します。シートを更新しない小さなメニューから始め、権限と対象範囲を確認しながら導入します。

実行確認の記録なし

公式資料を参照して構成した手順です。本記事の操作・コードの実行は未確認です。小さな入力例で期待結果を確かめてから利用してください。

できあがるもの

メニュー操作で「未完了: 2件(B2:B100)」が表示されます。状態の入力値は変わらず、集計用シートも増えません。

始める前に

  • ブラウザ版Googleスプレッドシートの編集権限と紐付きApps Script
  • コピーした検証用ファイルで実行。Apps ScriptはV8ランタイムを利用
  • 「台帳」B2:B100に状態、値は未着手・対応中・完了のいずれか
  • 同じプロジェクトに既存のonOpen関数がない検証ファイル
入力例

台帳!A1:B4は「案件,状態」「A,未着手」「B,対応中」「C,完了」。B5:B100は空欄にします。

手順

  1. 検証用ファイルからApps Scriptを開きます。既存のonOpenがある場合は上書きせず、別の検証ファイルで試してください。この例はインストール型トリガーを追加しません。
  2. 次の完全なコードをスクリプトへ貼り付けて保存します。他の記事の同名関数があるプロジェクトには混ぜません。 /** @OnlyCurrentDoc */ function onOpen() { SpreadsheetApp.getUi().createMenu('台帳点検') .addItem('未完了件数','countOpenItems').addToUi(); } function countOpenItems() { const s=SpreadsheetApp.getActive().getSheetByName('台帳'); if(!s || s.getMaxRows()<100) throw Error('台帳を確認'); const vals=s.getRange('B2:B100').getDisplayValues().flat(); const n=vals.filter(v=>v==='未着手' || v==='対応中').length; SpreadsheetApp.getUi().alert('未完了: '+n+'件(B2:B100)'); }
  3. 保存してシートを再読み込みします。メニューバーに台帳点検が出たら、未完了件数を選びます。初回に権限確認があれば対象ファイルの内容を確認します。
  4. ダイアログが2件になるか確認します。B2を完了へ変えて再度メニューを選び、1件へ変わることを確かめてから未着手へ戻します。

期待結果と照合する

メニュー操作で「未完了: 2件(B2:B100)」が表示されます。状態の入力値は変わらず、集計用シートも増えません。

まずこの入力例で確認し、件数や値が一致しているかを見ます。完了表示だけで判断せず、重複・空欄・対象外データも残っていないか確認してください。

うまくいかないとき

  • 101行目以降は対象外です。行数を広げる場合は範囲とダイアログの説明を両方直します。
  • 表記ゆれや空白は未完了として数えません。状態を入力規則で固定すると集計漏れを減らせます。

止める・元に戻す

追加したonOpenとcountOpenItemsを削除して保存し、シートを再読み込みします。メニューが消え、台帳データは残ります。

公式資料・対応範囲

参照日:2026-10-17。公式資料の一般的な機能説明と、本記事固有の入力例の実行検証は別です。実務での短縮時間や効果は未計測です。

同じツールで試す

GASの記事一覧へ →