- サービス
Excelでワークフロー ~ ActiveDirectrtyへの登録申請業務の自動化
従来のExcel申請書をそのまま登録画面に採用 ご相談の経緯 B社では、所属変更に伴うAc...
Excel専門|マクロ+システム開発で業務改善
業種 | |
---|---|
利用規模 | |
解決した問題 |
事象 | 利用者環境によっては、マクロが使えないケースがある |
---|---|
対策 | Excel本来の機能を活用すれば、意外とこんなこともできる |
世の中には、様々な事情から、「時代に逆行」するケースがあります。
例えば、世を挙げて生産性向上が叫ばれ、人に頼らず自動化することが求められている昨今ですが、自動処理するためのプログラム利用が禁じられている運用もあります。
曰く「セキュリティのため」・・・いかにも尤もらしい理由なのですが、それではセキュリティとは何ぞやと問えば、「万が一悪意を持ったプログラムが入り込まないようにすることで、全てに優先して実現すべきことである」という主旨の主張をされる方が増えてきました。
いったい、経営目的より優先すべきことって・・・?
そんな極端なケースだけでなく、やむを得ない事情で「時代に逆行」せざるを得ないケースもあります。
例えば、銀行ではそもそもコンピュータを使うこと自体が限られた業務・人のみで、Excelもつい最近まで利用禁止の銀行が少なくありませんでした。
いまでも、インターネットには直接つなげていないところが大半です。
これは、どんなに対策しても外部からのハッキングは100%防止できないという前提で、物理的に繋がらないようにすることで、いざという時の被害を原理的に防止することが目的です。
また、役所への申請様式がExcel形式で用意される例が増えてきましたが、妙に親切心を起こしてマクロで自動処理しょうとすると、「Excelではないスプレッドシートを使っているので、マクロに互換性がない」「途中でESCを押すなど想定外の使い方をされたとき、エラーメッセージが出て役所に問い合わせが来てしまう」「職場のルールで、マクロが使えない」・・・といった諸事情により、全く使えないばかりか、マクロで入力補助などを行う前提でいたものが崩れると、入力チェック後に提出されるべきところ、未入力やエラーのオンパレードで申請されてしまう、といった実情があり、こちらもマクロは歓迎されません。
それでは、マクロが使えないと大したことができないかといえば、運用の工夫次第で、それなりのことができます。
一例を挙げると、入力時のミスを減らすというテーマに対しては、入力規則を活用したり、入力必須箇所を色分けする、といった工夫だけでも、相当数に減らすことができます。
以下、具体的な活用事例をご紹介します。
入力ミスを大きく分類すると、①本来入るべき内容と無関係な内容が入っている ②入力必須なのに未入力 ③数字や文字の打ち間違い、の3つに大別できます。
よくある例として、生年月日を入れる欄に、漢字で「昭和99年99月99日」のように入力されているケースが挙げられます。
意味的には間違っていないのですが、コンピュータで処理をする都合上、日付は5桁の数値で入っている必要があります。
マクロが使えれば爾後変換もできますが、使えない以上「間違ったデータは極力入れさせない」方針とせざるを得ません。
そんな時に活用するのが、入力規則です。「日付のみ」「xxx以上の数値」といった指定ができ、間違った内容が入るとエラーメッセージが表示され、確定できません。
当社の標準化では、入力必須項目には、識別できるように色を付けておき、入力後に色を消しています。
また、単に色を付けただけでは、なんで色が付いているかわからないので、メッセージも表示するようにしています。
次の例では、日付を入力すると色が消え、メッセージも消えています。
例えば「中田さんを田中さんと誤認した」ようなケースでは、ロジックでチェックすることが不可能なので、運用上2名もしくは次の日の自分にチェックさせる、2回入力して突合する、といった方法がとられます。
一方で、都道府県名は選択肢が47しかない事から、プルダウンメニューから選択させることで、入力ミスを0にできます。
数値や日付については、厳密にエラーチェックすることは不可能ですが、入力規則でFrom~Toの設定を設けておけば、1桁間違えるようなミスは無くせます。
入力ミスは、「誤入力率」のような指標化が可能です。すなわち、分母(入力文字数)が増えれば、分子(ミス)も増える関係にあります。
人によって率の大小はあれど、ゼロになる人はまずいません。
そこで、分母そのものを減らそうという発想が出てきます。
これが入力支援の発想で、人の手間も減らしますが、ミスも減ります。
設定自体は、入力規則でプルダウンリストから選ぶ設定をする他、コメント機能などで入力方法の解説を行う、vlookupなどで関連項目を自動で引用する、といった方法が採れます。
この他、吹き出しのオブジェクトを配置しておく方法もあります。印刷時に一緒に印刷されてしまうと鬱陶しいので、プロパティから印刷対象外の設定を入れておくとよいでしょう。
Excelと言えば関数!と反射的に返ってくる位、切っても切れない関係にあります。
マクロが使えない以上、関数や式をフル活用することになりますが、「ついうっかり削除」や上書きされると、検出が難しくなります。
そこで、入力箇所以外は保護をすることで、壊したくても壊せない状態にすることができます。
意外と知られていませんが、セルだけでなく、シート名などを変更できないようにするBookの保護や、オブジェクトには記入・変更などができるようにする、といった細かい設定が可能です。
入力支援やミス防止策を講じても、入力ミスをゼロにはできません。
例えば、選択肢1で「学校=中学校」を選択した後、選択肢2で「学年=5」を選択した場合、どちらかが間違いです。学校の選択肢に応じて学年の表示を切り替える方法もありますが、後々のメンテナンスがとてつもなく面倒なことになり、いわゆる「属人化」してしまう傾向があるので、濫用は避けるべきでしょう。
そんな時、素直に相互の関係性を式で判定してメッセージを表示するのがわかりやすいです。
あきらかな間違い(エラー)と、間違いの可能性がある(警告)は、内容により表示色を変えるとわかり易くなることが多いです。
前項で「濫用は避けるべき」としましたが、数が限定されているなら、選択肢に応じて関連する次の選択肢を絞り込む方法も取れます。
Excelの課題の1つに、「設定した式や関数を間違って書きつぶす」トラブルがあります。これを防ぐには、シートの保護設定を行えばよいほですが、いざ入力しようとしたら、「保護されているため読み取り専用となっています」と言われてしまうと、がっかりした気分になります。
そこで、予め保護されている箇所、入力可能な箇所、プルダウンから選択する箇所・・・といった目的別に色分けしておくと、間違った箇所への登録を未然に防止できます。
上記の例では、入力可能箇所に着色されており、何か登録すると色が消えるようになっています。また、黄色はプルダウン、赤色は入力必須箇所として、「システムに怒られる前に」正しい入れ方が分かるようにしてあります。
当社でも、こうした考え方に基づき、マクロ無しの実装を行う事が少なくありませんが、利用者がそれなりにExcelに慣れていると、少々機能面ではもの足らないものとなりがちです。
例えば、マクロであれば、利用者が入力する必要の無い箇所は「表示しない」という選択肢がとれますが、マクロ無しならグレーアウトする程度しかできません。
また、画像から選択したいようなケースでは、マクロに頼らざるを得ません。
従って、ケースバイケースですが、マクロ無しだからといって入力ミスが頻繁に発生したり、利用者が使い方に戸惑うようなことはありませんでした。
実用面だけ考えれば、最小限の水準はクリアできそうです。