ようこそ ゲスト さん、新規登録(無料)して気になる疑問を解決しませんか?

質問

QNo.3534250 VBAのメンテナンスの引継ぎについて
質問者:mkmio05 ココのカテゴリでいいのか分からないのですが、専門家の方のご意見がいただけそうなので、質問させてください。宜しくお願いします。
エクセルでVBAを使用して入力するアプリケーションのようなものを作成し、それを使用して何名かで入力業務をしていたのですが、退職するにあたり、VBAのメンテナンスの引継ぎをどうしようが考えています。
今後メンテナンスを要することは滅多にないと思うのですが何があるか分からないので、その時のために、参照にしているシートを印刷して、どのセルを参照しているか具体的に明記したり、フロー図のようなものは残しておいたほうが良いのでしょうか?
参照にしているシートは7〜8枚くらいあり、シート上やVBAの中で関数を沢山使用しており、フォーム上からの入力ボタンも沢山あるので、分かる人が見れば分かるとは思うのですが、複雑なので読み解くのは大変だと思うのです。
メンテナンスを引き継ぐ人は、入力業務には携わっておらず、別の仕事をもっている人がやることになり、今は仕組みなどは全くわかっていません。
とりあえず明日は、VBAの中身の説明を簡単にすることになっていますが、普通はどうなのでしょう、説明だけで引継ぎ終了してしまう場合のあるのでしょうか?
困り度:
  • すぐに回答を!
質問投稿日時:
07/11/20 21:09
この質問に対する回答は締め切られました。

回答良回答10pt

ANo.1 この問題は、「Excelレガシー(過去の遺産)」っていう名で、アメリカでも問題になっていたと思います。つまり、日常業務の効率化に大いに役にたっているExcelのマクロやVBAだけど、解る人の人事異動や退職でメンテナンスができないとか、さらにSOX法対策で、「社員が適当に作ったVBAは、信頼性が疑わしいので、きちんとドキュメント化しろ!いやなら使うな!」っていう感じで。

そして、VBAをメンテして使うにしろ、使用中止するにしろ「仕事を間違う。システムとして維持できない」という結末が予想されます。

引継ぎを行うにしても、相手がVBAの知識が無い人では意味ないですし、質問者さんが書かれたように、エクセル&VBAの組み合わせは、単純な処理ならいいのですが、複雑なことをやらせた場合、VisualBasicとかPerlで作るよりも難解になりがちです。
場合によっては、「ライトオンリープログラム」って位置づけにして、「メンテが必要になったら捨てる」ほうがいい場合もあるかもしれません。

いずれにしても、VBAをメンテして使い続けるなら、兼任じゃなく専任の担当者を配置し、そういうシステムの仕事ができるように人材育成するしかないでしょうね。(ソフトハウスは、この手の仕事は手間がかかるが、儲からないから、敬遠するでしょう)

>>とりあえず明日は、VBAの中身の説明を簡単にすることになっていますが、普通はどうなのでしょう、説明だけで引継ぎ終了してしまう場合のあるのでしょうか?

まあ、そうするしかないでしょうね。引き受ける人は、引継ぎの説明は聞くでしょうが、「VBAは、判らないから、できません。それに、私は、本業が別にあるから(そんな仕事に似合うお金もらってません!!わかるなら、ここ辞めてます!!)」ってスタンスではないでしょうか。

教育、人材育成、システム投資等に企業が手抜きした結果でしょうから、なるようになれ!と割り切るしかないのでは?
回答者:lv4u
種類:アドバイス
どんな人:経験者
自信:参考意見
回答日時:
07/11/21 01:04
この回答へのお礼そうなんですか。アメリカでも問題になっていたなんて・・・
VBAを使用した場合、今の私と同じ問題が何処でも発生しているんですね。後任の人がその道のプロだったら話は別ですが、兼任でメンテすることになり、私自身もいち派遣社員の全くの素人&初心者で、本当にどう引き継いでいいのか悩んでしまいます。

>教育、人材育成、システム投資等に企業が手抜きした結果
凄く分かります、これ。VBA作成の依頼が来た時から疑問に思っていました。私自身、今の仕事に見合った給料もらっていないですし、派遣なので、何故ここまでやらなければならないのか怒りを感じるくらいです。

VBAって便利なようですが色々問題を抱えているんですね。
こんなことになろうとは全く知らずに言われるままに作成し、ドツボにはまった1人です。
VBAは個人レベルで単純処理に使う程度にとどめた方がよさそうですね・・・
今日の口頭の引継ぎはとりあえず終了しましたが、最後まで出来るだけの事はやりますが、あとは割り切っていきます^^;
大変勉強になりました。ありがとうございましたm(_ _)m