表データ化したExcel帳票を集計、AIで分類する【4/4】

このシリーズでは、Windows 11に標準搭載のRPA「Power Automate for desktop」を使って、個々のファイルに記録されたデータを1枚の表データに変換しました。第4回では、表データにすることで可能になる集計、分類処理について紹介します。

表データにすることの最大のメリットは集計と分析

このシリーズでは、架空の自治体「東京都米花市消防本部」による立入検査結果通知書を題材に、帳票データを下のような表データに変換しました。消防点検の目的は、「火災予防のために(略)あらゆる仕事場、工場若しくは公衆の出入する場所(略)に立ち入つて、消防対象物の位置、構造、設備及び管理の状況を検査」すること(消防法第4条)ですが、ほとんどのサラリーマンは、営業日報、業務日誌等の報告書を書いたことがあるでしょうし、報告書を書くことが仕事の職種もあるはずです。

こうした作業は、1990年代には紙からExcel/Wordへの移行が進み、2000年代からWebシステムが採用され、2010年代からはタブレット/スマートフォンでの入力に変化しました。しかし、電波環境の悪い現場や、記入項目が多い帳票ではシステム化が進まず、いまでも紙やExcelを使っている場合がかなりあります。ここで困るのは、「せっかくExcelデータになっているのに集計できない」という問題です。

2020年代になって、DX推進の名目でRPAが急速に普及したのは、日本の組織のすみずみに残るExcelデータをWebシステムに転記する業務、WebシステムからデータをダウンロードしてExcelファイルに集約するといったルーチンワークを自動化するためでした。ただし、RPAを提案してくるITコンサルは自社や提携先の有償ツールを推奨してくることが多く「マイクロソフトの無償ツールで事足ります」という助言をもらえないことが多々あります。今後Windows 11への移行が進むことでPower Automate for desktopは情報システム部門の承認がなくても全員のパソコンにインストールされた状態になります。もし皆さんの職場でパソコンを使った定型作業がある、データはたくさんあるのに人手が足りないので集計、分析できず、死蔵させてしまっている、という状況があれば、このシリーズでみたように、比較的簡単な操作で帳票データは表データに変換できます。有償ツールを買う必要はありません

Excelの集計はピボットテーブルを使う

Excelの集計は、ピボットテーブルを使うのが便利です。ピボットテーブルは複雑な集計にも使えるので機能が豊富、とっつきにくい印象がありますが、もっとも基本的な使い方は行に日付、列に属性、値に固有の番号を指定することです。

上の画面では、行に「立入検査日」、列に「立入用途」、値に「文書番号」を指定しました。値の集計方法は、個数と合計が一般的ですが、今回は件数を数えているので個数を選びます。金額や作業量を集計するときは合計を選びましょう。

ピボットテーブルを使うだけでも、米花市消防本部の集計担当官の仕事はだいぶ楽になるはずです。今回は99件のダミーデータを作りましたが、人手では1日かかってもできないかもしれないです。ところが、上司に報告すると「丁目単位でいいから地区ごとの指摘事項をまとめてくれないか」と言われてしまったとします。上司は常に思いつきで動いていますから、集計がどれだけ面倒なのか気付いてくれないものです。しかし、「東京都米花市米花南四丁目1番地」のような所在地から「南四丁目」のような地区情報だけを抽出するにはどうしたらいいでしょうか? 書類によって、「米花市米花南4丁目1番地」だったり、「東京都米花市米花町5-4-5」だったりと、表記が揃っていません。RPAでデータを集約することで、データに見えたものが「半データ」だったことに気付かされることはよくあります。

そこで生成AIの出番です。ChatGPTのチャット画面で「米花市米花町1丁目2番3号」から「米花町一丁目」を取り出せるか試してみます。

ExcelからChatGPTを使うには生成AIツール for Excel

生成AIを使えば、表記が統一されていない住所を「町名+漢数字+丁目」のような形式に揃えられることはわかりました。では、Excel内で生成AIを使うにはどうしたらいいでしょうか? そんなときは弊社の無償Excelアドイン「生成AIツール for Excel」を使ってください。API料金(弊社を介さず、各AI事業者と直接契約)は発生しますが、アドインそのものは無料です。API料金は数百文字のテキストを数万件単位で扱っても数百円程度です。ほとんどのケースでは、ChatGPTの月額20ドルのサブスクリプションより安価に済みますので安心して使ってください。

生成AIツール for Excelで上記のプロンプトを使うときは、以下の数式を入力します。

=BB.ASK(CONCAT(“次の住所から「地名+丁目」の形式(例: 米花町一丁目)で丁目を抽出する作業です。住所全体は不要で、丁目だけ出力してください”,CHAR(10),”## 作業例”,CHAR(10),”住所: 米花市米花南4丁目1番地”,CHAR(10),”米花南四丁目”,CHAR(10),”## 作業”,CHAR(10),”住所: “,[@宛先所在地]),0,32,”gpt-4o-mini”)

CONCATは文字列をつなげる関数、CHARは文字コードを文字に変換する関数で、CHAR(10)は改行文字のことです。テーブルに地区列を追加してこの数式を適用すると、宛先所在地から地区名を「町名+漢数字+丁目」に揃えて抽出できました。

BB.ASK関数の引数について補足します。プロンプト部分を省略すると、今回は以下のように引数を指定して関数を呼び出しました。

=BB.ASK(<プロンプト>0,32,”gpt-4o-mini”)

2番目の引数「0」は「生成温度」の指定です。生成AIでは、温度が高いほど分子が乱雑に運動することからの喩えで、高い温度を指定するほどAIの回答が創造的になります。ここで「0」を指定しているのは、「余計なことはせずに、もっとも確実な答えを出力しなさい」の意味です。

3番目の引数「32」はトークン数です。1トークンは概ね1文字のことですが、よく使う英単語やかなり頻繁に使われる日本語は、1単語1トークンになります。「32」という数字そのものに根拠はありませんが、地名なので32字あれば十分、という意味で上限トークン数を指定しています。

最後の引数「gpt-4o-mini」はOpenAIのモデル名です。一般的なタスクであれば十分な性能があり、コストもかなり低めに設定されています。

生成AIの力を借りて、地区ごとの指摘事項をピボットテーブルで集計したのが下の画面です。

人手では途方にくれる作業量でも、RPA、Excel、生成AIの組みあわせでだいぶ短縮化できます。

生成AIで、テキストから意味を抽出

上司は常に思いつきで行動し、部下を悩ませます。「丁目単位で地区ごとの指摘事項をまとめる」ミッションを報告すると、今度は「この毛利なんとかって事務所。しょちゅう事故が起きる噂があるそうじゃないか。管内にこういう怪しい場所があるのは困るから、AIで何とかならないのか」という無理難題をふっかけられました。どうしたらいいでしょうか?

生成AIは、世界中のテキストを蓄えています。試しに、「毛利小五郎のいる毛利探偵事務所は事件・事故と関わりかあるか」聞いてみましょう。

どうやら判断できそうなので、Excelで以下のような数式にします。

=BB.ASK(CONCAT([@立会者氏名],”のいる”,[@宛先法人名],”は事件・事故と関わりかあるか。「はい」または「いいえ」で答えてください”),0,16,”gpt-4o-mini”)

生成AIは「毛利小五郎のいる毛利探偵事務所」と「妃英理のいる妃法律事務所」を「事件・事故との関わりあり」と判定しました。

ピボットテーブルで集計すると、事件・事故と関わりがあるのは米花市内の今回の立入検査では2箇所のみ。犯罪捜査は警察に任せるとして、消防としては重点的に検査したほうがよさそうです。

この例は、立会人と検査場所の法人名だけを手がかりに「怪しさ」を判定しました。生成AIは、学習データの範囲内で名探偵コナンに関する情報を参照している可能性がありますが、実務ではどう使えばいいでしょうか? 実際の点検業務であれば、指摘事項に立入先の実態が書かれているはずです。こうしたテキスト情報はこれまで報告として書かれているだけで分析対象にはなっていませんでしたが、生成AIを使えばテキストの内容から、非難路に荷物が置いてあるか? 可燃物が無造作に置かれているか?といった検査後に沸いてくる集計上の疑問を、ある程度の精度を持って集計できます。AIには間違いがつき物ですから、個別の判断は人間がする責任がある一方で、膨大なデータを大まかに捉えたいとき、生成AIによる集計は非常に強力です。

RPAによるExcelデータの集計、生成AIによる分析のご相談はビジー・ビーへ

スマートフォン/タブレット用の入力補助ツール「点検エース for Excel」、Excel用の生成AIアドイン「生成AIツール for Excel」の開発・販売を通じて、Excel、RPA、生成AIの豊富な活用事例、理科系大学院出身のスタッフによる専門的なご助言を提供しております。

ご質問、ご相談は、フォームからお問い合わせください。


BusyBeeをもっと見る

購読すると最新の投稿がメールで送信されます。

中野克平のアバター

About the author

BusyBeeをもっと見る

今すぐ購読し、続きを読んで、すべてのアーカイブにアクセスしましょう。

続きを読む