Excelマクロに依存しない運用への移行
各部局へ配る通知業務は、作成者が退職したうえ、部局や制度が変わるたびにマクロそのものを書き換えるしかない状態でした。Googleワークスペースへ移してGASで作り直し、いまはプログラムに触らず、スプレッドシート上の設定を変えるだけで更新できるように変えました。
- 支援先
- 国立大学
- 組織区分
- 大学・高等教育
課題・背景
- 各部局へ配る予算執行の通知業務を、Excelマクロで作成・配布していた
- 部局の追加や制度の変更があるたびに、マクロ本体を書き換えなければ運用が回らなかった
- マクロを作った職員が退職し、学内に更新・保守できる人がいなくなっていた
- 仕様がブラックボックス化して改修が止まり、部局の追加や制度変更に対応できない状態だった
- 固定のセル範囲と固定長の配列に依存していたため、部局や予算項目が増えると集計漏れやエラーが起きた
- 全ファイルを同じフォルダに置く前提の作りで、置き場所を変えるとリンクが切れるおそれがあった
- シートの追加・コピー・貼り付けといった手作業が多く、更新のたびに手間がかかっていた
- Excelの破損やWindows依存といった脆さもあり、業務が止まるリスクを抱えていた
実施内容
退職者が残したコードを解析するところから始め、年度初めの配布に間に合う工程を引いて、新年度対応の改修を先に仕上げました。そのうえで、プログラムを書き換えずに運用できる形へ移行しています。
- 既存マクロの解析退職者が残したコードを読み解き、何をしている処理なのかを整理するところから始めました。
- 新年度対応の改修雛形ファイル側にピボットを持たせて通知書を生成する方式に変更し、月・部局での絞り込みに対応しました。固定のセル範囲をやめ、データの入っている範囲を毎回取得する作りに変えています。
- 増減に耐える構造への作り替え配列を動的に確保する形にし、部局や予算項目が増えても動くようにしました。あわせて、不要になったシートの削除処理や変換テーブル、操作用ファイルを廃止して構成を減らしています。
- プログラムを書き換えずに運用できる形へ部局・財源・予算項目・加算の条件をすべてマスタ側で定義し、変更はスプレッドシート上で完結する形にしました。部局が増えても制度が変わっても、プログラム本体(GAS)を書き換える必要はありません。コードは生成AIを使って書き、実装にかける時間を抑えています。
- 一部局での実証から全部局へまず一部局で実証し、現行の出力と金額を突き合わせて検証したうえで、全部局へ展開しました。
成果
- 属人化して止まっていた保守を外部から再開し、担当者がいなくても年度更新が回る状態に戻した
- 新年度の改修が、各部局への配布期限に間に合った
- 部局や予算項目が増えても耐える構造になり、処理の重さと属人性を解消した
- 事務・部局それぞれの単位で総表を見られるようにした
- 部局の追加や制度の変更は、スプレッドシート上の設定を変えるだけで反映できるようになり、プログラムを書き換える必要がなくなった
- 設定をマスタ側に寄せ、設計をドキュメントに残したことで、担当者が代わっても更新できる形になった
コントランの役割
既存マクロの解析から、改修の設計・実装、動作テスト、納品と操作説明までを担当しました。続けて、プログラムを書き換えずに運用できる形への移行も、設計から実装・検証まで担当しています。
