AccessVBAシステム廃棄の序章
先に結末を言ってしまう。
ある会社が、内製のAccessVBAシステムを廃棄した。そのシステムを作った人間が転職していなくなった後、誰も保守も改修もできなかった。外部のシステム会社に莫大な費用で解析を依頼した。解析が完了した後、会社が下した結論は「市販のパッケージを買う」だった。
まず、その顛末は後編で話す。
今日の前編で語るのは、そのシステムを作った人物との出会いと。彼がどんな仕事をしていたか。そしてなぜ経理課を去ることになったのか——その話です。
これは2020年ごろ、コロナ禍の直前に起きた話です。
本社内部監査室、J-SOX対応の始動
次に、私がグループ親会社の本社・内部監査室に異動になったのは、ある年の春だった。元々は事業子会社に所属していたのが、本社の内部監査室に呼ばれた形です。
内部監査室の仕事は二本柱だった。
一つは通常の内部監査——グループ各社の業務が社内規程やルールに沿って適切に行われているかをチェックする仕事。現場の業務を直接やるわけではなく、一歩引いた視点で審査・指摘する。
一方で、もう一つが、異動して初めて耳にした言葉だった。
「J-SOX」。
Jというのは日本(Japan)のことで。SOXはアメリカのサーベンス・オクスリー法のこと。上場企業には、財務報告に係る内部統制の評価と監査が法律で義務付けられている。通称「J-SOX対応」と呼ばれるその業務が、内部監査室の仕事の大きな柱だった。
そのため、内部統制の「文書化3点セット」。これも初めて聞く言葉だった。業務フロー図、業務記述書。リスクコントロールマトリクス(RCM)——現場の業務プロセスを詳細に文書化し。どこにリスクがあってどんなコントロールで防いでいるかを証明する一式のことです。
J-SOX評価監査、全社巻き込みの苦労
これが、想像以上に大変だった。
J-SOX対応の評価と監査の対象は、内部監査室だけで完結する話ではない。本社の事業部門・管理部門はもちろん。連結子会社も含めたグループ全体が評価の対象になる。つまり、グループ全体を巻き込んで準備しなければならありません。
しかし、各社・各部門の業務担当者にヒアリングして、業務フローを紐解いて。文書化の不備があれば指摘して修正してもらって、整備されたら評価して。監査法人にもチェックしてもらって——このサイクルを期末に向けて回していく。
私も彼も、そのためにこの部署に呼ばれたのだった。
新同僚の意外な才能
内部監査室には、私とほぼ同じタイミングで異動してきた人物がいた。
さらに、グループ内の事業子会社の経理課から来た男だった。年齢は私より少し若かったと思う。関西出身らしいが、いかにも関西人という陽気さや饒舌さはなく。どちらかといえば落ち着きのある物静かな人物だった。会議でも発言より傾聴が多い。一見すると、どこにでもいる実直なビジネスパーソンです。
しかし、ある日の雑談でその印象は一変した。
前の部署では何をしていたんですか、という他愛のない質問を向けたとき。彼は「入金消込のシステムを作っていました」と答えた。Accessで、と付け加えながら。
まず、「Accessで?」
「はい、VBAで書いていました。一人で」
その答えの重さに。私がすぐには気づかなかったのは仕方のないことかもしれありません。
入金消込業務の複雑性とその過酷な実態
次に、入金消込という仕事を知らない人のために、少し説明しておく。
顧客から振り込まれた入金データと。発行した請求書を突き合わせて「この入金はどの請求書に対応するか」を一件ずつ確認・照合していく作業だ。帳簿上の数字を合わせていく、地味だが神経を使う経理の基本業務のひとつです。
彼が勤めていた事業子会社は、建設・補修関連の会社だった。年間売上30億円規模。問題は、その売上の構成です。
一方で、BtoB(企業間取引)の案件では。たとえば工事一件あたり数十万から数百万円規模の入金がある。件数は比較的少なく、金額が大きい。照合自体はそれほど複雑ではありません。
しかし、この会社にはBtoC(個人向け)の仕事も相当数あった。個人宅の補修・修繕工事だ。一件あたりの金額が1万円、2万円の世界です。
これが、消込作業を格段に難しくする。
ここで一度立ち止まって考えてみてください
Pythonや自動化スキルを体系的に習得して、ITエンジニアとしてのキャリアを切り開きたい方には「Enjoy Tech!(エンジョイテック)」が選択肢のひとつです。
一人担当の膨大で複雑な消込業務
そのため、1万円の入金が今日50件振り込まれてきたとする。同姓同名の個人客が複数いることもある。金額が端数で一致しないこともある。分割払いで入金が何回かに分かれることもある。工事完了と入金のタイミングがずれることもある。それを一件一件、請求書と突き合わせて確認していく。
BtoBの少額・高額案件と、BtoCの大量・少額案件が混在している。しかも月間の入金件数が膨大になる。
その消込業務を、30億円の売上規模で、一人の経理担当者が日々回していた。

Access VBA一人開発の偉業
しかし、そのシステムを、彼はMicrosoft AccessとVBAだけで作っていた。ゼロから、一人で設計して、一人でコーディングして。
私は、その事実の意味がわかるほどにはAccess/VBAをかじっていたので。話を聞いた瞬間に鳥肌が立った。

AccessのVBAで業務システムを作ること自体は。中小企業の現場では今でも珍しくない。しかし条件が違う。
さらに、BtoBとBtoCが混在する。月間件数が膨大な入金データを捌く消込システムとなると。処理の複雑さは桁違いになる。取引先コードで絞り込む機能、入金日の範囲指定、消込済み・未消込のステータス管理。金額の端数処理ルール、分割入金の突き合わせロジック——それらを一人の経理担当者が。専任の開発チームも外注もなしに設計・実装・運用していたのです。
彼は自分が作ったシステムについて話すとき、自慢するわけでも誇張するわけでもなく。ただ淡々と「こういう仕様で動いていました」と事実を語った。その落ち着きが、かえってリアリティを増幅させた。
私は内心で静かに思った。この人は天才だと。
異動の表向きと裏事情
まず、彼がなぜ経理課から内部監査室へ異動になったのか。直接本人に聞いたことはない。ただ、傍で見ていた私には一つの推察がある。あくまで私の主観であり、事実と異なるかもしれありません。
表の理由としては、内部監査室側のニーズが明確だった。
J-SOXの文書化3点セットを整備するためには、業務プロセスを精緻に分解して。システムのロジックを読み解いて、リスクポイントを特定する能力が要る。そのうえで、現場担当者にわかりやすく説明できなければならありません。
次に、経理の業務を知り。かつAccessのシステムを一人で構築できるほどの論理的思考力を持つ人間は。J-SOX対応の戦力として非常に魅力的だ。内部監査室が彼を欲しがった理由は、合理的に説明できる。
ただ、私が後から耳にした話では、裏の事情もあったようです。
彼は出来すぎた。
一方で、「出来すぎる」ということが、職場の中でどういう影響を生むか。経理課という環境の中で、他のメンバーや上司から見ると。彼は「一緒に仕事をしにくい人物」として映っていたらしい。
その話は、次のセクションで詳しく書く。
妥協なき仕事、そして孤立と異動
彼の人物像について、私が傍で見て感じたことをそのまま書く。
そのため、関西出身だが、関西人によくある人懐っこさや冗談好きな面はあまり表に出なかった。物静かで、感情の起伏を見せない。仕事の話になると言葉が正確になり、余計なことを言わなくなる。
彼は自分に対して厳しかった。アウトプットの質に妥協しない。不完全なまま「とりあえず」で提出するということをしありません。
そして、それは他者に対しても同様だった。
しかし、自分のスタンダードで仕事を測るから、そのスタンダードに届かない仕事を見ると。明らかにそれが態度に出た。指摘は的確だが、オブラートに包まない。「これはこうすべきです」と言うとき。そこに相手への配慮よりも論理の正確さが優先される。
それは決して意地悪ではない。ただ、受け取る側には冷酷に映った。
経理課の部下や同僚から見ると、「自分たちにはできないシステムを勝手に作って。それを当然のように使わせている。仕事の進め方にも口うるさい。でも自分だけで動いていて。教えてくれない」——そういう印象になっていったようです。
経理課を去り、内部監査室へ異動
さらに、実際には、彼が教えなかったのではなく。彼のスピードと水準に周囲がついていけなかったというほうが正確だと。私は思っている。しかし現場の空気というのは、事実の正確さより感情の蓄積で動く。
裏事情としては、経理課における彼の居場所は。気づけば少しずつ失われていっていたという話も聞いた。
内部監査室への異動は。本人にとっては新しい舞台を与えられたことだったのかもしれない。あるいは、組織としての落としどころだったのかもしれない。そのあたりの事情は、私には測りきれありません。
まず、ともあれ、彼は内部監査室にやってきた。J-SOXという激務の嵐の中で、私の隣に。
——後編に続く。
関連リンクとチェックリスト
著者はこうして解決の糸口を見つけた
著者も同じ境遇から始まりました。独学でここまで自動化した道のりを参考にしてみてください。
学習サービスとアンケート
このスキルを活かしてさらに前へ進むなら
Pythonや自動化スキルを体系的に習得して、ITエンジニアとしてのキャリアを切り開きたい方には「Enjoy Tech!(エンジョイテック)」が選択肢のひとつです。

