こんにちは。
デジタルツールを使用して業務改善を目指しているデジタル初心者です。
小売業に勤務していますが、今はお店ではなく裏方の事務仕事をしています。
日々の業務の中にには毎週同じ作業を繰り返していることが多々あります。少しでも効率化出来ないかと
いうことで、今回は RPA にチャレンジします。
powerAutomateを使ってExcelのメールアドレスリストへ添付フィル付きのメールを一斉送信する
実際の作成物はこちらです。
作成の経緯
同僚Uさんという部署内で事務的な業務を担うベテラン社員ですが、パソコン操作はあまり得意ではない方がいます。今の業務歴は5年くらいで、慣れたパソコン操作は問題ありませんが、新しいことも求められると戸惑ってしまうようでそんな時は質問を受けたりしています。
Uさんは週1回、倉庫の在庫データと販売データをまとめたファイルを関係者に一斉送信しています。送信先も多いうえに(宛先は80名程度いるようです。)、人事異動などにより宛先の追加・削除が定期的に発生します。人事異動自体は年2回と頻度は決して多くありませんが、担当の変更で発生する変更人数が1回あたり多いときで15~20人発生しています。
その上で不定期で「この人も宛先に追加して」「この人退職したから宛先から外して」
という依頼が月に2~3件は発生するようです。
その度にUさんは宛先が多すぎて
「誰を追加・削除しているんだか段々わからなくなってきた!」
と時々叫んでいます。
結局正しいリストに修正完了するまで
「削除依頼したのにまだメールが来る」
「頼んだのにまだメールが来ない」
などで3週間はかかっているとのことでした。
そんなUさんの助けになればと想い作成に取り組みました。
作成したツールは【PowerAutomate Desktop】を使用しました。
フローは以下の通りです。
ソースコードはこちらです。
SET MailAccount TO $'''------@-----'''
Folder.GetSpecialFolder SpecialFolder: Folder.SpecialFolder.DesktopDirectory SpecialFolderPath=> SpecialFolderPath
Excel.LaunchExcel.LaunchAndOpenUnderExistingProcess Path: $'''C:\\Users\\992058\\Desktop\\研修②\\一斉送信用メールアドレスリスト.xlsx''' Visible: True ReadOnly: False Instance=> ExcelInstance
Outlook.Launch Instance=> OutlookInstance
Excel.GetFirstFreeColumnRow Instance: ExcelInstance FirstFreeColumn=> FirstFreeColumn FirstFreeRow=> FirstFreeRow
LOOP LoopIndex FROM 2 TO FirstFreeRow - 1 STEP 1
Excel.ReadFromExcel.ReadCell Instance: ExcelInstance StartColumn: $'''A''' StartRow: LoopIndex ReadAsText: False CellValue=> ExcelData
Excel.ReadFromExcel.ReadCell Instance: ExcelInstance StartColumn: $'''B''' StartRow: LoopIndex ReadAsText: False CellValue=> ExcelDataAddress
Outlook.SendEmailThroughOutlook.SendEmail Instance: OutlookInstance Account: MailAccount SendTo: ExcelDataAddress Body: $'''いつもお世話になっております
研修用のテストメールを送信いています
お手数をおかけしますがご了承お願いいたします
''' IsBodyHtml: False Attachments: $'''C:\\Users\\999999\\Desktop\\研修②\\一斉送信用メールアドレスリスト.xlsx'''
END
Excel.CloseExcel.Close Instance: ExcelInstance
Outlook.Close Instance: OutlookInstance
[SET MailAccount TO $'''------@-----'''] のところにはメールアドレスが入ります。
[ ''' IsBodyHtml: False Attachments: $'''C:\Users\999999\Desktop\研修②\一斉送信用メールアドレスリスト.xlsx''']
の999999は社内PCのアカウント名のため文字修正しています。
実際に使ってもらったUさんの反応
Uさんに実際に使ってもらった感想を聞いてみました。
- 送信先をエクセルで管理して送信できるのは便利で助かる(◎)
- 送信が一人に付き1回で、人数分繰り返されるのは送信済トレイが同じメールで一杯になって不便(×)
- ファイル添付まで自動でできるのは助かるけど、ファイルの作成も自動でやってくれたらもっと助かるんだけど・・・(課題)
Uさんのフィードバックをまとめると下記のようになります。
- 私の作成したフローでは1回あたり1名のメール送信のため、送信作業が80回繰り返していまい、【一斉送信ではない】ものになってしまった
- Uさんの毎週のルーチンは①倉庫データの作成のためのデータ抽出(複数のシステム)②データをまとめたエクセルファイルの作成③作成したファルの一斉送信で、私のフォローは③の宛先管理と、Uさんの一連の作業の一部改善にとどまったものでしかできなかった
まだまだ手放しで喜んでもらえるレベルにはほど通りと認識しました。
次へのステップ
Uさんのリクエストにもあるように、添付するエクセルファイルも毎週同じ作業の繰り返し(更新)なのでエクセルの自動化にもチャレンジしていきたいと思います。