【効果があるかを考えて決めましょう 】エクセルVBAを使うとエクセルファイルでの作業は結構、自動化できます
(※写真は大阪市の中之島周辺)
WEB上のデータをとってきて~といった作業は、VBAはあまり得意ではないと思うのですが、一人で黙々とパソコンに向かってHDDやサーバーに保存しているエクセルブック(ファイル)を使って「どうしてこんなの毎回手作業でやらないといけないんだろう」と思いながらやっているなら、VBAを使うと、全自動はおススメしませんが部分的に自動化できたり、今までよりも楽になったり、ミスが減ったり、時短できたり...します。
エクセル作業の改善にはVBAが手っ取り早い。エクセルを使えれば、タダで使えるし(ALT+F11キーで開発環境にもすぐ入れる)、他の言語より分かり易いし、デバッグ(プログラムが想定通りに動くようにチェックしたり不具合を修正したりする作業)もやりやすいです。
どの部分をVBAで置き換えるかにもよりますが、作業工程の一部を置き換えるだけなら、最悪VBAがうまく動かなくても、今まで通りに手作業でもできるので、「今日、請求書を送らないといけないのにVBAがうまく動かないから送れない」とか「明日、締め日なのに間に合わない」といった事態も何とか回避できるのではないでしょうか。できるところから少しずつ取り組めばいいし、使っているうちにコーディングのスキルも徐々に上がってゆきます。他の人ができないことをできるようになることは自信にもなるし、仕事が楽になる以上のメリットがあると思います。
ChatGPTがプログラミンが得意なことを知るまでは、自分で全部考えて、自分が過去に作った中から使えそうなところをコピーしてきたり、本を見たり、ネットで検索したり、Youtubeで勉強したりしながら作っていましたが、最近はChatGPTにこういうのを作りたいとお願いして、受け取った返答をお願いした通りになっているか検証し、違うところは修正依頼をしての繰り返しで、作り上げていくのも効率的だなと気づきました。但し、今のところ、ChatGPTの回答をそのまま使うことはまずありません。私は汎用的に使い回せるコーディングがしたいのに、ChatGPTの回答はお願いした案件から判断して作られたもので、汎用性はあまりありませんから、もらった回答をもとに自分が使いたい汎用性を持ったものに作り替えています。
いずれはコーディングが全くできない人でもChatGPTを使ってプログラムを完成できるようになるのかも知れませんが、今のところは、少なくとも読めることが必要かなと思っています。
VBA(に限りませんが)で改善する前に次のことに気をつけましょう。
「その部分をプログラムでの処理に切り替えて改善効果はあるのか?」
面倒で、いやだなーと思っていても、実際に費やしている時間をチェックしてみると、案外大したことがない場合があります。
例えば、月に15分くらいだったら...
作業工数は15分 X 12か月 = 180分(3時間)/年
3時間未満でVBAでコーディングできるなら、1年経過ぐらいから改善効果は見込めるかも知れませんが、何年も同じことをやらないかも、やり方が変わるかも、とか。やることが変わると、VBAのコーディングの修正時間も必要になります。
このような場合、恐らく改善すべき課題としては他の案件を探した方がいいかも知れません。もちろん、手作業では精度が悪く、後工程の人に迷惑をかけているようであれば、波及効果が見込めるので、それも含めて効果が十分あるなら、やるのもアリ、あるいは、VBAを使い慣れるために数をこなす目的でやるのもアリかと思います。
何本ものコーディングをしたことがない人はそれを作るのに何時間くらいかかるかの見積もりができないものです。これは数をこなすしかないかも知れません。
では、VBAでどんなことができるかと言えば、「通常、エクセルのファイルを開いて、エクセルの中で完結する作業であれば、1つのファイルであろうが複数のファイルであろうが、やる条件、ルール等、やり方が明確であれば、かなりの確率でプログラムに組み込むことはできる」とは思います。でも、プログラムを組むよりも「手作業でやった方が結局は楽」ということも中にはありますので、その辺はムリにプログラムで置き換える必要はないでしょう。
5年、10年経てば、PCに話かけて「こうこうこう言うプログラムを作ってほしい」から始まって、AIと対話しながら、プログラムが出来上がってしまう時代が来るかも知れません。AIと対話する人の説明の上手・下手によって、うまく行ったり、ダメだったりもあるかも知れません。
将来的には、例えば今5人でやっている作業はAIを使って1人でやることになるかも知れません。その1人に選ばれるためのスキル、例えばAIを人よりもうまく使いこなすスキルは必要になるかも、さらに雇用主に気に入られたり、同僚と上手くコミュニケーションがとれるスキルもでしょうか?
まさかこんな時代が来るとは思っていなかったのですが、車が運転手なしで走ったり、タクシーが空を飛んだりといった、SFのような時代が近づいています。とにかく今は「今できる何かをやるしかない」と実感しています。