ノーコードで、PDFデータから欲しい情報だけをExcelに自動でピンポイントに抽出！！

皆さん、こんにちは。3回目の投稿になります。

今回は、
PDFの見積書から小計に記載された金額を自動的に識別し、Excelへ転記することにチャレンジしました！！

## 背景
日々の業務の中で、業者に入札依頼を行い、送られた来た見積書を1つずつExcelに入力し、比較表を作り、決裁伺い作成したり、過去の工事単価と比較して交渉へ活かす為に、何かとデータを変換してストックする仕事が膨大にあります。

こういう作業を一瞬で終わらせることは出来ないかと思いからチャレンジし、同僚にも試してもらいました✨


## 完成品
今回は、異なる3種類の見積書から小計の数字だけをピンポイントに識別し、Excelに転記する仕組みとなっております

https://x.com/daidai1994d/status/1925481503750070284




## 使ったもの
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1802395/42f447f4-823c-50e7-7c3c-89eb39c73ffb.png)

https://flow.microsoft.com/ja-jp/desktop/

## 事前に準備しておくこと
①Microsoftアカウント（無料）
②Power Automate Desktopは、ダウンロードしインストール（無料）
③PDFの書類（見積書や請求書）を特定のフォルダーにまとめておくこと


## フロー

![１.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4051385/99a8c633-0ca2-4e47-a82e-1bc95c3e38db.png)
![2.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4051385/c30f90f9-89e4-4fa2-836d-b8af8a680c75.png)


左側のアクションから実施したい操作を選び、ドラッグアンドドロップを行うイメージです。
以下、各項目の詳細設定を紹介させて頂きます。

#### 1.Excelの起動
![3.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4051385/ece503a0-dabf-49c0-a34d-e5ba10c7caaa.png)
![4.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4051385/1ac80c9e-d44e-408a-9bfb-1f76fcef2e4a.png)
※今回は、新規のExcelに転記の為、**空のドキュメントを使用**を選択しています。

#### 2.フォルダー内のファイルを取得
![5.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4051385/b50d7537-437f-4dfd-a467-469e2da9a5c3.png)
![6.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4051385/ca04a165-9558-479a-9e49-812a896c40bf.png)
フォルダーの欄に、抽出したフォルダーを指定します。
※ファイルフォルダー欄で、PDF以外は無視し、PDFだけ識別し抽出することも可能です。

#### 3と13.For each
![7.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4051385/4b721086-f6c6-4663-a6b3-a4b181a36a2c.png)
![8.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4051385/ebe4830f-f2fa-4bf8-9914-d4985a026f0d.png)

#### 4.PDFからテキストを抽出
![9.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4051385/e836e6cf-87d7-4f00-a6f5-e3456f6ab166.png)
![10.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4051385/db3f1cd7-d114-4b64-91ce-6e54e2e6a0de.png)
PDFファイル欄で、**Currentltem**を選択してください。

#### 5.テキストの分割
![11.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4051385/14c263d0-7e6f-4386-bd83-c3822f4c5d97.png)
![12.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4051385/da1bf839-ffbe-4257-832c-31f1f6b93589.png)
分割するテキスト欄で、**ExtractedPDFText**を選択してください。

#### 6と12.For each
![13.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4051385/cd0ddfd1-60f6-4aea-a3e1-15ebdfd43733.png)
![14.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4051385/ae48a2e2-e3e0-498b-9690-52679e1d1128.png)

#### 7と11.IF
![15.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4051385/d85d5e2f-495e-4d86-b0ad-82f9d7839ee1.png)
![16.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4051385/7f71a7f2-be34-43d6-aa60-6933e6d92520.png)
※演算子欄で、**次を含む**を選択してください。
※2番目のオペランド欄で、識別したキーワードの文章を入れてください。今回は、小計の数字が知りたいので小計を入れました。

#### 8.テキストの分割
![17.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4051385/c8b14f3f-8c48-4726-bfb9-5b31b2cee2ac.png)
![18.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4051385/149f68fa-5eac-49be-81aa-b16a96dd7132.png)
※区切り記号の種類欄は、カスタムを選択してください。
※見積書の小計の後ろに￥がついており、数字のみを抽出したいので￥で区切る為に、**￥**を記入してください。

#### 9.Excelワークシートから列における最初の空の行を取得
![19.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4051385/8d9220fd-ac39-44ad-9826-3f1c9d103da4.png)
![20.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4051385/745587bb-e151-4bd8-b196-fc854ddd8b45.png)
※列欄に、Excelの転記した列を記入してください。
わかりやすいように、生成された変数をFirstFreeRo_Dに変更してあります。

#### 10.Excelワークシートに書き込む
![21.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4051385/dd288748-3e9e-4c37-a273-965e12b3870a.png)
![22.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4051385/d614f48d-b705-47f6-b510-66af4e8d1b48.png)

**以上で完成です**🎊✨



## 周りの反応

**登場人物**
同僚A：（この道一筋の大ベテラン）
だいちゃん：筆者

**だいちゃん**：
PDFから欲しい数字がピンポイント抽出出来る仕組みを作ってみました(-ω-)/

**同僚A**：
一見しょぼいように見えるが、色々と応用して使えそう！！
ましてや、一度仕組みを作れば、そのフォルダーにPDFを追加したり、削除するだけで済むのは便利だと思う！！
話は変わるが、私（この道一筋の大ベテラン）は、過去に行った工事の実績から、見積が高いか適正かを判断することが出来る。
だが、だいちゃんは出来るか？

**だいちゃん**：
出来ません・・・

**同僚A**：
今まで見積書渡しても、チラッと見て終わってたと思うが、ただ渡してただけではなく相場感覚を養って欲しいかったんだよ。

今回は、数字だけだったので、業者名と工事名、工事面積（単位）、金額が別列かつ同一行へ列挙されるようになれば、最新の建築施工単価や他業者とも比較しやすくて、金額の妥当性を把握しやすくなり、感覚論ではなく相場観を掴んだうえでの価格交渉が行えるようになるのではないか！？

建設工事の見積は、業者によって作り方もどの大枠に入っているかもバラバラだから、その分厚い中から知りたい単価を自動で探し出してくれるだけでも、時間を短縮してくれる。

この機会に、効率的に相場感覚を養おうと行動してくれれば、DXで業務が改善されなくてもDX研修に参加した意味があると思う（真顔）。

但し、私らの世代には横文字が何かと難しいから私は使わないがな(笑)！！


**だいちゃんの心の声**：
なんで見積書をやたら渡してくる謎が解けたのと、
ある意味で周りに恵まれていると少し涙が出ました（内緒）。

そして、DX拒否反応世代には、根気よく説明が必要だなーーーーっと思った次第です(笑)


## 終わりに
最初は、仕組みがさっぱりわからなかったというのが本音ですが、
DX初心者である私でも少し調べて仕組みを理解すれば、あとはパズルのようなものなので比較的、楽しく作成することが出来ました！！

本文中には記載しませんでしたが、
他部署（元所属部署）の方にも話をしたら、入力された内容から自動で決裁書の雛形に反映されたり、グラフ化すればいいなー！などの意見も頂き、色んな可能性があると感じました。

なかなか抵抗があるかもしれませんが、
単純な事務作業は絶対に激減させることが出来ると思うので、
皆さんも**Power Automate Desktop**にチャレンジしてみてください。


**最後まで読んで頂き、ありがとうございました。**