見出し画像

公務員現役時代プログラミングが俺の仕事を激変させると実感した瞬間【俺一人プロジェクト】

どうも、ユーチューバーです。
嘘ですw

以前、地方公務員をしていた俺ですが、当時とにかく我々の仕事の効率が悪かったこと、そしてそれに対抗して俺一人だけプログラミングで効率化していたことを書きます。

「俺一人プロジェクト」と呼ばれていた開発業務です(いやひそかに俺が勝手にそう名付けて進めていたw)。

これを同業者たちと共有するところまで行けば立派だったでしょう。
ですが、他人の作ったシステムというのは使い勝手が悪いものです。

無理にそんな高度なものを配布する前に、俺は早期退職しちゃったのでw


世界一しょうもない仕事

問題解決の対象は、俺が「世界一しょうもない仕事」と呼んでいた業務です。
ネットワーク上のフォルダ内にExcelの表があって、毎月初めにこれに直接書き込みして上書き保存するという簡単な報告業務がありました。

ところが県庁の各課がそれぞれにこれを一斉にやってるもんだから、その数は合わせると10を超えました
それらネットワーク上、バラバラの場所にある各課のフォルダにアクセスして、そこにあるExcelファイルを開き、自分の所属欄に日付や名前や数字とか入力し、そして上書き保存して閉じます。

早く閉じないと他の所属の担当者が報告入力できません。
もちろんファイルを「共有」にしておけば複数人がアクセスしても問題ないのですが、我が県のネットワークは脆弱で、それをやるとよくエラーが起きていました。
だからファイルが共有になっていないこともあったのです。

これを!
毎月初めに!!

全部で10個とかやるんですよ!!!!

さっきの手順を!!!!

それで、人力頼みなもんだから、出先機関の担当者(俺たちのこと)が入力忘れていることもあるでしょう?
どうするか。

なんと、県庁の担当者が、電話してくるんですよwwww
いやマヂか??
なんというアナログwww

電話ってwwww

信じられますか??
言っちゃ悪いですが、効率悪いの通り越して、公務員全員頭が悪いアピールをしたいんですかね?

県庁の人たちは自分の課の仕事しか見てないので、出先機関の一担当者がそんな10個とか処理していることに気づいてないんですよ。

せっかくネットワークが繋がって、グループウェアシステムも使っているのに、その機能を生かし切れていません。

グループウェアシステムとは?

グループウェアとは、業務の効率化や情報共有を目的とした、複数のツールが組み込まれたソフトウェアです。
代表的な機能は以下の4つ。

1.コミュニケーション機能
メールやチャット、掲示板などのコミュニケーションツールをシステムに集約。それぞれのツールを立ち上げる手間が無くなり、通知の見逃しを防ぐのに効果的。

2.ワークフロー機能
契約書や経費、書類の決裁、休暇申請のフローをシステム化する機能。グループウェア上で申請を行うことができ、期限も設けることもできるため、メールや対面で書類を渡したり期日をリマインドしたりする手間が掛からない。

3.スケジュール・タスク管理機能
プロジェクトのタスクを割り振ったり、メンバーのスケジュールを共有したりすることが可能。リモートワーク中や外出中も他のメンバーの状況が分かるため、スムーズな業務推進を後押しする。会議室の予約やタイムカードの打刻・管理を行えるものも。

4.ファイルの共有
(以下略)

出典:グループウェアおすすめ10選!

我々が使っていたグループウェアは県庁も出先機関も職員全て利用できて、文書のやり取りやメールなどを普通に使っていました。

で、この機能の一つにフォームでアンケートを作成し送信するシステムがあるので、それを報告用に転用すればいいのに、と俺は思いましたがね。

毎月初日に、これを各所属の担当者に直接送るでしょう。

担当者には自動でメール通知されるので、所属の担当者はアンケートのシートに直接入力して回答します。
これなら忘れることは少なくなるし、他人が使用中でファイルが開かない、なんて悩みは一挙に無くなります。

それぞれの回答が自動でCSVファイルにまとめられるので、ちょっとそれを加工すれば自分の望みの形でアウトプットできるんですよ。
便利ですよね?

なのにこれを今でもまったく、使おうとしないwww
というかこの機能を知らないのかも知れませんwwwww

なので相変わらずExcelファイルに直接書き込みさせています。
しかも一担当者に、毎月、10個もw
愚かwww生産性ゼロwwwww


「しょうもない」の最大の理由

そもそもの話、Excelファイルに各人がそれぞれ入力して報告する方式って、あんまり意味がないと思うんですよ。
やっていることは報告年月日、報告者の名前、あと何らかの数字の入力です。毎月変わることのない、非常に単純な報告内容です。

問題は、誰でもファイルに入力できるので、誰がやっても結果は同じ、つまり逆に言えば、誰が入力したのか分からないことなんですよ。

出先機関の担当者、その代理で隣の出先機関の人、果ては県庁の担当者自身が入力しても、誰にも見分けがつかないってことです。
だって、ハンコもサインもないのです。

つまり誰かが報告日だけ直して、前月の内容を丸ごとコピーしてきても、何も変わらないし、そのことは確認のしようもないのです。

誰が入力したのか厳密に見分けることはできませんが、県庁の担当者に言わせれば各担当者が実際に入力することが大事なのであって、あとはそれを信じることによってこの報告業務は成り立っています。

俺が「しょうもない仕事」と言って憚らないのは以上の理由によります。

これも前の記事、紙ベースが頭にあるための弊害です。


しょうもない仕事に対抗するために自動化

さて、しょうもないしょうもない言ってても何も変わらないし、県庁のかしこい子たち(笑)はあと10年ぐらいは今のやり方を変えるつもりがないことが分かっています。
できるだけ手間をかけずにこの業務を素早く終わらせる手段を考えました。

公務用パソコンには制約があって、勝手にアプリケーションとかインストールできません。
今ならPythonの知識があるんでそっちを利用したいところですが、たぶん今でも使用できないはずです。

当時の対抗手段は手持ちの、インストール済みのソフトでなんとかするしかありませんでした。

解決の手段はVBA

俺はExcelのマクロですね、あれを構築するVBAを独学で勉強したので、このしょうもない10個のファイルを一つ一つ開けるなんて作業を、ボタン一つでやる、自動化に成功していました。

まあマクロとVBAは厳密に言うと違います。

VBA(Visual Basic for Applications)ってのは、Microsoft Officeの作業を自動化するプログラミング言語の一種です。

マクロの記録を使っている職員もいましたが、あれは作業手順を記録して再現するだけなので、あまり複雑な処理ができません。

記録したマクロをVBAのエディタで開くと英字と数字の羅列が出てきてビビることでしょう。コードとも呼ばれます。

マクロ記録に頼らず、VBAのコードを書ける人はさらにほんの僅かでしょう。

俺なんてVBAのコードをいきなり紙に書いてましたからねw

各ファイルのショートカットを10個作成しておく、なんて人もいましたが、正直ダサいですね。俺に言わせればこれもアナログっぽいですねえ。

俺は作業用ファイルを一つ開いて、ボタン一発ですよ。
すると画面上にすべてのファイルが次々と「ザーッ」と開いていって、俺はそれらを片っ端から報告入力していきます。

そして実はやろうと思えば入力・上書き保存・ファイル閉じるまで自動化できた。本当に、ボタンクリックだけで、一瞬で全部終わっちゃう。

できたんですけど、県庁の担当者はごく気軽に、シートの行や列を足したり、ファイルの仕様を変更することがあったので、そこまで自動化できませんでした。

まあファイルの変更があったらそこでVBAの動作を一時ストップする、なんてことも、今ならできると思いますけどね。

そういうわけで、これをもっと進化させたら、もうこういった「しょうもない仕事」は一瞬で終わる予感がしました。
古臭い公務員の仕事を一歩先んじて激変、自分だけ楽できることが分かったのです。
将棋で言うたら一手早いんですよw

大量のファイル整理も自動

もう一つ、俺の所属部署では、もンのすごい大量に古い電子ファイルがあって、これをいい加減整理して、使わないものを消去したかった。

過去からの引継ぎで、何年間もそういったファイルが大量に保存されていたのです。

職員みんなで保存できるネットワーク共有フォルダなんですが、これって今まで適当に使ってきたので明確なルールが存在しなかったんです。

だからファイル名・フォルダ名の付け方とか場所とか、てんでバラバラで、ファイル単体だと正体が伺い知れず(ファイル名が"H5"とか、作成年しか書いてなかったりw)、フォルダもファイルもそうやってどんどん増えてしまったわけです。

共有フォルダはデータ量の上限があったので、もう俺の代でパンパンでした。

しかしこれらの古いファイルはどう考えてもこの先も使用されないと判断しました。
自分がやらないとこれ、ずっと変わらず続くことになるな、またどんどんファイルがたまるな、と思って一人で整理することにしました。

やるべきことは以下の通りです。

  • ファイルの作成・更新日時から5年以上経過したものはたぶんもう使わないので一括して一時保存フォルダに移す(その後1年経過したら丸ごと消去する)

  • 残ったファイルをリネームする。ファイル単体だと中身が分からない名前のものが多いので保存されたフォルダ、子フォルダ、孫フォルダの名前をファイル名に足す。

  • これらをある程度分類して新しいフォルダに保存する。ここでファイルの保存ルールを新たに設定して、職員全員に周知し、徹底するよう伝達する。勝手にフォルダを作らないこと!!

これは最初だけプログラムじゃなくて、コマンドプロンプトで(実際はpower shellで動かしました)実行しました。
仕上げはVBAになりましたが。

準備にやや時間がかかりましたが、実際やってみたら一瞬で終わりです。

全部で20GBぐらい、ファイルとフォルダの数量は合わせて1600以上あったので、普通に画面上GUIでマウス操作なんかしてたら、何ヶ月かかったか分かったもんじゃありませんでした。

気付いた格差感


こういった単純な業務を自動化できるのとできないのとでは、同じ仕事をしているにも関わらず、効率と生産性が全く違います。
技術と知識がもたらす格差を実感したのです。

知らない人はずっとそのまま、非効率的な仕事の仕方を退職するまで続けることとなります。


残念なのはこれらの功績を、一人でやったため、あまり知られていないし、便利だけど誰にもそれを引き継ぎすることができなかったことです。

この記事が気に入ったらサポートをしてみませんか?