VBA・マクロに関する私の考え
最近、
自分には一文の得にもならない、純粋に他人のためのマクロ
を作らされることが多くなって、改めて思うんですが、やっぱり、
マクロなんて自分のためにのみ作るもんだよな!
ってことですよ。
ウチの上司は、純粋に「単純作業をマクロ化することは良きことなり!」と信じている様子で、それが業務改善だと考えている様子。
でもねえ……。
そんなことしても業務改善にはならないと思うんですよ。
ウチの職場って旧弊なところで、結構マジで「給料は苦痛に耐えた対価。苦しんでいるからこそ給料をもらう資格がある」みたいな価値観が支配的なんですわ。そんな環境で一般人がヒイコラ言ってやってる作業をマクロで一瞬で終わらせてごらんなさいよ、逆にバカにされるよ。「アイツは苦労が足りん!」みたいな感じで。
だいたい、「Excelを使った面倒な作業の繰り返し」っつっても、関数やマクロを覚えるでもなく時間かけてやってるということは、当の本人にとっては「それで満足」なんですよ。だから放っといてあげたらいい。めんどくせーなーと思うんなら自分で工夫すりゃいいんだし。
そこに、「こんな便利なものがありますよー」ってしゃしゃり出てどうすんだろ。どれほど便利でも、仕組みも分からず使うだけの人は、不具合があったら「仕組みが分かってる人」に全力でもたれかかるしかないんだからさ。「仕組みが分かってる人」は一人負けじゃん。
それに、「『仕組みが分かってる人』が自分が使うために作るマクロ」っていうのは簡単なんですよ。不具合があっても自分で対応できるし。
だけど、「『仕組みも分からず使うだけの人』が使うために作るマクロ」ってのはめちゃくちゃ大変です。経験のある人なら分かると思うけど、自分にとってそんなマクロを作るメリットは皆無なのに手間だけはアホみたいにかかる。しかも、実際使われ出したら、
そんなしょうもないこといちいち聞いてくんなボケ!
というレベルのことや、
節子……、それはマクロ以前の問題や……
というレベルのことまで安易に聞いて来られるようになる。
早い話、マクロを作る側には何のメリットもないのにデメリットばかりが大きくなる。
さらに、そのマクロが奇跡的に
どんなシロートが使っても不具合が起きない堅牢性を持ち、なおかつ作業量を劇的に減らすチョー便利なモノ
だったとしよう。どういうことが起こるか。
単純な話である。
「手間も時間もかかる大変な仕事」が「アホでも一瞬でできる楽勝な仕事」に変わる
だけのことだ。
たぶん、「今まで3時間かかっていた仕事が5分で片付くようになったんだから、2時間55分早く仕事を上がっていいよ♪」という風になる職場ってのは存在しないんじゃないかね?
逆に、浮いた時間に新たな仕事が詰め込まれて、却ってしんどくなるんじゃねえの(仕事の密度が上がっとるんだからさ)?
本気で「業務改善」しようってんなら、やっぱり人事とか予算とかどうこうできるレベルの層が「給料は苦痛に耐えた代償」という価値観を脱して、せめて「給料は価値を生み出した対価」という価値観になってもらわないとダメなんであって、そこを変えずに下々が「業務改善」策を提案しているようじゃ話にならないんですよね。
結論
マクロやVBAのスキルというのは、「給料=苦痛に耐えたことへの対価」という価値観による攻撃から身を守るための手段だと思うようになりました。
マクロやVBAのスキルを身につけたら、ひたすら自分のためにのみ使うようにしましょう。決して「単純作業にやたら時間をかけている同僚を助けてあげよう」などと思わないことです。マクロ使いから見ると、「単純作業にやたら時間をかけている同僚」は「メチャクチャ気の毒な人」に思えることでしょう。しかし、本人はさほど不幸だと思っていないはずです。むしろ、「長時間の単純作業に黙って耐えてるオレ、すごくね?」ぐらいに思っています。
「みんなのために」などという気を起こさないようにしましょう。あなたはあなたのためにのみマクロを作ればいいんです。それが一番効率がいいんですから。
別途給料がもらえる、というなら別ですが、そうでもないなら、決して私の二の舞にならないようにしましょうね!