私がRPAとVBAによる業務自動化に本格的に取り組み始めたのは数年前のことです。
気づけば管理対象は800を超え、AccessやSQL Server、Outlook、PAD(Power Automate for Desktop)などと連携した多層的なワークフローが日常となっていました。
一見すると拡張性を意識した設計ができているようで、実際には“管理困難”という現実が徐々に顕在化してきました。本記事では、私が技術者として何を設計し、どう運用し、どのような考え方で乗り越えてきたか──その技術的実践とマネジメント観点を交えて共有します。
1️⃣ “とりあえず作る”文化の落とし穴と属人化のリスク
業務現場の要望に即応するため、初期の頃はスピード重視で設計していました。テンプレートなし、バージョン管理なし、ログも記録せず、修正のたびに過去のロジックを自ら思い出して対応するという状態でした。
その結果、コードは属人化し、保守が極めて困難に。技術的に優れていても、他者が引き継げない仕組みは組織にとって資産ではなく、リスクとなる。私にとってこの時期は「技術的精度」より「継承可能性」を重視すべきだと気づく転機でした。
2️⃣ 設計思想の刷新 〜モジュール化・可視化・連携の徹底〜
“壊れにくく、引き継ぎやすい設計”を目指すようになってから、私は以下の技術的アプローチに切り替えました。
✅ モジュール設計と汎用関数の活用
共通処理(ファイル読み込み、DB接続、メール送信など)をVBAでモジュール化し、複数プロセスから呼び出せるように構築。またPAD側でも分割されたフロー設計を徹底し、再利用性と保守性を確保しました。
✅ エラーハンドリングとログ整備
Try-Catch的な制御構造を導入し、想定外の挙動にも柔軟に対応。エラー時には即座にログファイルへ出力し、障害のトレースを可能にすることで運用面の信頼性を強化しました。
✅ Access・SQL Serverとの連携整備
テーブル構造を業務単位で再構成し、SQLによる抽出精度とVBAとの連携効率を改善。データ取得処理では極力ロジックを簡素化し、処理負荷と保守工数を抑えました。
✅ Outlookによる通知設計
成果物送付やエラー通知などをOutlook経由で実装。件名ルールやテンプレート化された文面を用いることで、運用におけるブレを排除しました。
3️⃣ 技術者が担うマネジメント 〜守る仕組みの設計〜
技術力は自動化の原動力ですが、それだけでは持続可能性は生まれません。私が意識したのは、「誰が」「どこまで」「どう関わるか」を明確にするマネジメント設計です。
🛠 ドキュメントとナレッジベースの構築
フロー図・ログ仕様・改修履歴をOneNote+SharePointで一元管理。PADユーザー向けの操作マニュアルも自作し、教育コストの削減とナレッジの属人化防止を図りました。
🧠 エンドユーザーとの対話設計
“使いやすさ”に加え、“理解しやすさ”を重視。ステータス表示やログ確認機能を通じて、ユーザーが安心して活用できる環境を提供しました。
🔄 メンテナンス体制のチーム化
コードレビュー文化を導入し、改修判断・動作検証を複数人で行う体制へシフト。一人の技術者に依存するのではなく、組織全体で“守る”文化を構築しました。
4️⃣ 成果と次への布石
この数年で、個人が担っていた“技術的負荷”は“組織的資産”へと昇華しました。処理の安定性、修正のスピード、エンドユーザーの安心感──それらはすべて設計思想の転換によって生まれた成果です。
今、私が目指しているのは「ノーコードユーザーと技術者の架け橋」です。PADとのハイブリッド設計により自動化の敷居は低くなりつつあり、誰もが活用できる仕組みを支える技術的基盤を整えたいと考えています。
📝 結び:800超の仕組みが教えてくれた“持続可能な技術”とは
「作る」だけでは業務改善は完結しません。「守り、つなぎ、育てる」ことで、技術は本当の意味で現場に定着します。
業務自動化とは、単に人の手間を減らすことではなく、人と技術を接続する“デザイン”です。私にとってそれは、技術者としての支援であり、チームへの貢献であり、未来への投資なのです。
これからも私は、エンドユーザーの疑問や不安に寄り添いながら、“続けられる自動化”を追求していきます。