俺はこういうことに一生懸命! | AQUOSアニキの言いたい放題

AQUOSアニキの言いたい放題

徒然なるままに俺自身のネタや、政治・社会ニュースへの辛口コメント、最近観た映画の感想とかを書き綴ります。

たまーにブログのデザイン変更とか自作ブログパーツを出したりします。「ムホホ~♪」

今日も、他の人から持ち込まれたプログラムの書き換えを頼まれました。


結構ムダな処理が目立つので、分割したり再利用したり、

簡単にしたり・・・400行くらいあった雑なプログラムが100行ちょっとのコンパクトサイズに(°∀°)b


デバッグもぼちぼち調子よく、どこがダメだったのかがなんとなくわかるようになり、

3~4時間程度で従前のものよりも処理が早く、かつコンパクトな仕上がりに出来ました♪



試験データの評価用プログラムなので、数十万件規模のデータを取り扱うことが多く、

1回の処理で10分以上かかるようじゃそりゃストレスが溜まるってもの。


よくよく見ると、メモリの無駄遣いや、遠回りなアルゴリズムが目立つし、

余計な変数定義、分かりづらい命名規則も・・・。


どっかの大学生が作ったかのようなプログラム。

うーん、大学生のときの俺みたいなプログラムだな(笑)


今のところ、VBAしか使ってないけど、今回の書き換えを頼まれたプログラムは、

標準モジュールに、Subと書かれたマクロがたった1つだけ。


その中に、600行規模のコードがずらずらずら・・・。

読みづれぇ(笑)読みたくねぇしwwwww


似たような処理が繰り返されてるのに、分割再利用も検討されてねぇし・・・。


とりあえずコードを読み取って、やりたいことを機能別に

クラスモジュールに分割して再利用。


度重なる変更のためか、積もりに積もったムダな変数定義を削除し、

配列に出来るものは配列化。


途中、「ん?オーバーフローエラー?目立つところはないはずだが・・・?

キャストしなきゃならんのか?」とググって調べてみると・・・。


VBAの欠陥?みたいなエラーが(笑) ⇒詳しくはこちら。


最近もっぱら、VBAでデータ変換みたいな業務ばっかりやってるなぁ。

今の職場の通常業務がつまらなさすぎるから身が入らないし、

こういうもん作ってるほうがよっぽど俺の性に合ってる。

どんときやがれ!って感じです。





最近ちょっと興味があるのが、日報管理。

メールで毎日日報書いてるんだけど、あれって管理職はどうやって集計してんのかね?

毎日普通にメール読んで、手打ちしてるのかな?


でも日報なんて、社員それぞれが気の向くままに書いてるものが多く、

フォーマットを守れ!と言っても、個人の感覚のとらえ方が違うものが多く、

なかなか伝わらないもの。


んでもって、毎回そのメール読んで、手打ちしてるってなると・・・。

管理職、よくやるよな。俺だったら真っ先に改善を考えるのだが。


んで、どうやったら簡単に出来るのか?考えてみたんだ。


①ユーザーフォームでメール作成させるようにし、定型化させる。

これはVBAでもいいし、PHPでもかまわない。その他言語なんでもいい。

ユーザーフォームを作って、書いて欲しい項目を入力制限させれば、

強制的に定型化できるので、個人の感覚による書き方が減る。


②書いたものをテキストに置き換えてメールとして送る。

と同時に、フォーム別にXML文書とし、タグを項目別に取り付ける。


③毎日送られてくる日報メールをXML文書として扱い、

タグ別に項目を自動で振り分けるようにし、

毎日誰が何をどれくらいやったのか表にまとめるようにし、視覚化する。


④管理フォームに自動で書いてくれるので、メールを読むだけに集中できるし、

管理業務に追われることなく、自分の仕事に専念できる。


ざっと思いついたのだが、これで管理ファイル作成は自動化できるんじゃないのか?

毎日あのハゲ課長、「忙しい、忙しい」って呪文みたいに言ってるけど、

これで忙しくなくなるんじゃないのか?仕事奪っちまうぞ?


もちろん日報管理だけではない。


会議やミーティングの議事録も、他部門や他の会社に受け渡しする際も、

入力フォーマットが違うからわざわざ手打ちで入力してたりもするが、

入力フォームごと変換して自動入力するようにすれば、入力フォーマットに

左右される気遣いがなくなる。

ある程度書き手に融通の利くものが出来るはずだ。


うーん!こういう仕事やりたいなぁ!

俺の感覚だけど、「仕事を一生懸命頑張る」って、こういうことを考えるのを

「一生懸命」頑張りたい。