こんにちは。t0mohiです。3回目の投稿です。
食品スーパーで衛生管理のお仕事をしております。
前回はChatGPTを使用して、業務の効率化を行いました。
こちらの記事です。
[Qiita]
今回は、つい先日勉強したPower Automate Desktopを活用して、業務の効率化をはかってみたいと思います。
なんとこのPower Automate Desktop! データを自動化してくれるとのこと。
せっかく勉強したこの機会に、今まで実施していた作業が自動化できないか考えてみました。
Action1
PDFデータをExcelにしてみた
動機
①PDFデータは便利ですが、加工できないから使えないなぁと思ったことはありませんか?
②PDFの中のデータを抽出できたら、便利なのになぁ。
③Power Automate Desktopで、PDFデータをExcelデータに変換できることがわかった。
Power Automate Desktopで作成した動画
PDFから抽出したExcelファイルですが、マル秘の書類のため、動画では撮影していません。
フローのソースコード
FUNCTION Main_copy GLOBAL
Pdf.ExtractTextFromPDF.ExtractText PDFFile: $'''C:\\Users\\980376\\Desktop\\◆検便の手引書(2019.3.29改定・再.pdf''' DetectLayout: False ExtractedText=> ExtractedPDFText
Text.SplitText.Split Text: ExtractedPDFText StandardDelimiter: Text.StandardDelimiter.NewLine DelimiterTimes: 1 Result=> TextList
Excel.LaunchExcel.LaunchUnderExistingProcess Visible: True Instance=> ExcelInstance
SET NewVar TO 1
LOOP FOREACH CurrentItem IN TextList
Excel.WriteToExcel.WriteCell Instance: ExcelInstance Value: CurrentItem Column: 1 Row: NewVar
Variables.IncreaseVariable Value: NewVar IncrementValue: 1
END
END FUNCTION
使った感想を上司のAマネージャーに聞いてみた
Aマネージャー!
効率を上げるため、業務の自動化を考えています。率直なご意見をお願いします。
と聞いてみました。
上司Aマネージャー感想
・こんなの使えないのじゃない?
・文字だけ抽出してもなぁ。
・もっと普段の業務に使えるものがいいよなぁ。
という厳しいご意見をいただきましたので、もっと普段困っている実用的なものを考えてみました。
Action2
各お店に配属されている衛生担当メンバーに一斉メールを送りたい
動機
衛生担当者は、総勢で100人くらい各お店に配属されています。
衛生担当者は、メーリングリストがないため、Outlookでメールを送る際、以前送信したメールを転送するか、1人ずつアドレスを入力するかをしておりました。
また、新規入社者、退職者も発生しますので、メールを送り忘れてしまう方が発生してしまうことがあるのです。
Power Automate Desktopを使用すれば、名簿リストから簡単にメールが送信できることがわかり、実際に試してみました。
Power Automate Desktopで作成した動画
実施結果
100名近くの担当者に、一斉メールを送信することができました。
使用したツール
・Excel
・Power Automate Desktop
・Outlook
手順
1.衛生担当者の名簿を用意
End終了
9.フローのソースコード
FUNCTION Main_copy GLOBAL
Outlook.Launch Instance=> OutlookInstance
Excel.LaunchExcel.LaunchAndOpenUnderExistingProcess Path: $'''C:\\Users\\980376\\Desktop\\2024QKダミー名簿.xlsx''' Visible: True ReadOnly: False Instance=> ExcelInstance
Excel.ReadFromExcel.ReadCells Instance: ExcelInstance StartColumn: 1 StartRow: 1 EndColumn: 7 EndRow: 98 ReadAsText: False FirstLineIsHeader: True RangeValue=> ExcelData
Excel.CloseExcel.Close Instance: ExcelInstance
LOOP FOREACH CurrentItem IN ExcelData
Outlook.SendEmailThroughOutlook.SendEmail Instance: OutlookInstance Account: $'''amari-t@aeonpeople.biz''' SendTo: CurrentItem['社員番号'] Subject: $'''手指消毒・清掃除菌剤について''' Body: $'''関係各位
お疲れさまです。
テストメール送ります
'''
IsBodyHtml: False IsDraft: False
END
END FUNCTION
使った感想を聞いてみた
上司Aマネージャーに率直な意見を聞いてみた
今まで衛生担当者は、メーリングリストが無かったため、Outlookでメールを送る際、1人1人入力、もしくは転送メールをコピーしていたが、これで100名近くの衛生担当者に一斉メールの送信ができることになり、現状より作業効率の改善ができると思います。使いやすさと改善点があれば、率直なご意見を伺いたい旨をお伝えしました。
上司Aマネージャー感想
・1人1人個別にメールが送られていたら、送られた相手は、他の人にも同様のメールが送られているのがわからないのではないか?
上司Aマネージャー感想
・名簿リストから連絡先(社員番号)を引っ張ってきているから、従業員の入れ替えにも即時対応できる点は便利である。
フィードバックに対して感じたこと、学んだこと
Power Automate Desktopを使用して、今実施している作業が効率化できるか試してみました。
上司のAマネージャーから率直な意見を聞いて、改善する余地はまだまだあると感じました。
1人1通のメールではなく、自動でメーリングリストを作るとか、メール以外の連絡方法やアプリ等、違う視点で改善をしていきたいと思います。
Power Automate Desktopは、自部署にとっては新しいツールであり、馴染むのは時間がかかると思いますが、使って良かったと思っていただけるように、今後、グループメンバーの意見を取り入れながら、何回もできるまで、チャレンジしていきたいと思います。