事務職員のPower Automate Desktopやってみた~【コードを共有します】特定のメールの本文と添付ファイルの保存編~
事務職員のPower Automate Desktopやってみた~特定のメールの本文と添付ファイルの保存編~で紹介したフローのコードを共有します。
以下コードをコピーし、ご自身のフローに貼り付けてご利用ください。
また、フローの共有方法は↓こちらを参考にしてください。
事務職員のPower Automate Desktopやってみた~フローのコピー・他人との共有編~
0.はじめに
※フォルダパスにおけるユーザー名部分は●●に、Outlookのアカウント部分は■■にしています。
コピペ後、ご自身の環境に合わせて適宜変更してください。
1.フローの概要
本フローはMainフローに以下を構成します。
①:件名で指定したメールを取得する。
(送信者、宛先、本文の内容でも指定できます。)
↓
②:アクション『For each』にて上記で取得した各メールに以下を繰り返す。
・フォルダーの作成
・メール本文の保存(txt形式)
・添付ファイルの保存
2.コード
Outlook.Launch Instance=> OutlookInstance
Outlook.RetrieveEmailMessages.RetrieveEmails Instance: OutlookInstance Account: $'''■■''' MailFolder: $'''Inbox''' EmailsToRetrieve: Outlook.RetrieveMessagesMode.All MarkAsRead: True SubjectContains: $'''【3月11月(金)〆切】power automate desktop調査''' Messages=> RetrievedEmails
LOOP FOREACH CurrentItem IN RetrievedEmails
Folder.Create FolderPath: $'''C:\\Users\\●●\\Desktop\\PADてすと''' FolderName: CurrentItem.subject Folder=> NewFolder
Outlook.SaveOutlookEmailMessages.SaveEmailsAs Instance: OutlookInstance Account: $'''■■''' EmailsToSave: CurrentItem SaveFormat: Outlook.MessageType.TextOnly SaveEmailsAs: $'''メール%CurrentItem.subject%''' SaveEmailsTo: NewFolder
Outlook.RetrieveEmailMessages.RetrieveEmailsAndSaveAttachments Instance: OutlookInstance Account: $'''■■''' MailFolder: $'''Inbox''' EmailsToRetrieve: Outlook.RetrieveMessagesMode.All MarkAsRead: True SubjectContains: CurrentItem.subject SaveAttachmentsInto: NewFolder
END
3.注意点
※メールの件名を新規作成するフォルダ名に設定しているので、
以下の様にメールの件名を指定しつつ、部署名等で差別化を図る必要があります。
・【〇月〇日〆切】〇〇調査(部署名)
・【〇月〇日開催】〇〇会議資料(部署名)
件名を上記の様に指定するよう、照会時に伝えておきましょう。
※ウイルス付きメールを取得する可能性もあるので、メール受信は個別に確認して、
保存作業を自動化することをお勧めします。