0. 動機
定期的にダウンロードされるファイルをメールで送付して、それをトリガーにPower Automate(PAC)でTeamsに投稿できたら色々捗るかなと思って作ってみました。
1. 元ネタ
下記Youtubeのスクリプトから。
こちらでは関数にメール作成の機能を入れていたり、GetInspectorプロパティでメール送信前に一度目視でメールの内容を確認したりしているのですが、スクリプト起動したらすぐメール送れるようにしました。
余談ですが上記miajimyuさんの一連のPowerShell講座は私のようなIT初心者にはとてもいいと思います。
2. スクリプト
#日付の取得
$today = Get-Date -Format "yyyyMMdd"
#メールの内容記載
$To = "xxx@hotmail.com" #アドレスはサンプル
$CC = $null
$Subject = "Test Mail by PowerShell sent on $today"
$Body = "Test Message by PowerShell"
#メールの作成と送付
$outlook = New-Object -Comobject Outlook.Application
$mail = $Outlook.CreateItem(0)
$mail.To = $To
$mail.CC = $CC
$mail.Subject = $Subject
$mail.Body = $Body
$mail.Attachments.Add("C:\Users\Username\Downloads\Sample.xlsx") #添付ファイルの完全パス
$mail.Send()
#メモリ解放...間違ってたらすみません
$mail = $outlook = $null
[GC]::Collect()
3. 出力
上記スクリプト実行すると下記のようなものが送付されます。
このメールのタイトルなどをトリガーにPACを作るとWeb系のアプリとの連携ができると思います。
4. 終わりに
基本自分用メモですがどこかの誰かの役に立てば幸いです。
作成したスクリプトをすぐに起動したい場合には下記2つの記事でできる設定をしておくと楽だと思います。