Excel で電子メール アラートを自動化:効率的に期限を追跡するための 2 つの簡単な方法
さまざまな人々の電子メールと、彼らが守らなければならない期限を含む次のデータセットを使用し、それらの日付に基づいて電子メール アラートを設定します。

方法 1 – Power Automate を使用して Excel で自動電子メール アラートを生成する
ステップ 1 – データセットを準備する
- 前述した次のデータセットを使用します。
- 期限に従ってメールアラートが自動的に送信されます。 .

- データセットの任意のセルを選択し、Ctrl を押します。 + T.
- テーブルの作成 のダイアログ ボックス が表示されています。
- テーブルの範囲はデータセットの範囲です。
- OK を押します。 テーブルを生成します。

- Excel ファイルを OneDrive for Business に保存します。 またはシェアポイント .
- Microsoft 365 に移動します。 アプリケーション。

ステップ 2 – Power Automate を起動する
- 左上のアイコン (正方形の中に 9 つの点) をクリックします。
注: OneDrive 個人アカウントでは機能しません Microsoft 365 が必要です。 アカウント。
- [すべてのアプリ] をクリックします。 MS 365 のアプリのリストを表示するには .

- Power Automate を選択します。 アプリケーション。

- Power Automate で [作成 ] をクリックします。 次に、[スケジュールされたクラウド フロー] を選択します。 .

- パワーフローに名前を付けます。 自動電子メール アラートという名前を使用しました。 .
- アラートを毎日送信したいので、[1 日ごとに繰り返す] を選択しました。
- [作成] をクリックします。 .

ステップ 3 – Power Automate と Excel をリンクする
- 再発の 1 つのステップがあります。 .
- [新しいステップ] をクリックします。 他のステップを追加するには。

- テーブルに存在する行をリストする を選択します。 アクションから タブ。このオプションが表示されない場合は、検索ボックスで検索することもできます。

- [場所] のドロップダウン メニューをクリックします。
- OneDrive for Business を選択します。 .

- OneDrive を選択します。 ドキュメント ライブラリの場合 .

- ファイルの場所に移動し、ファイルを選択します。

- データセットを含むテーブル名を選択します。 表 1 を使用しました。 Excel で。

- [詳細オプションを表示] をクリックします。 .

- フィルター クエリ内 フィールドに次のように入力します:
Deadline eq'. - [動的コンテンツの追加] をクリックします。 フローティング ウィザードが開きます。
- 式に移動します。 タブをクリックし、数式バーに次の数式を入力します。
formateDateTime(convertFromUTC(utcNow(),'Central America Standard Time'),'yyyy-MM-dd')

ここでは 期限 の書式を設定しました。 Excel の列 中米標準時の標準形式のファイル 。
'で終わる .

- 日時を設定します。 フォーマット ISO 8601 へ .

ステップ 4 – メールのリストを抽出する
- [次のステップ] を選択します。 検索ボックスに「選択」と入力します。 を選択し選択:データ操作 アクションのリストから .

- [動的コンテンツを追加] をクリックします。 [値 ] を選択します。 リストから。

- テキスト をクリックします。 地図を選択した後のアイコン オプション。

- メールを検索 検索バーで [メール] を選択します。 リストから。

ステップ 5 – 抽出されたメールのリストを作成する
- 別のステップを追加し、作成 を検索します
- [作成] を選択します。 .

- 作成 操作が表示されるので、[動的コンテンツの追加] をクリックします。 .
- 式内 バーに次の数式を入力します。
union(body('Select'),body('Select'))
- [OK] をクリックします。

ステップ 6 – 各メールにコントロールを追加する
- コントロールを選択します .

- [それぞれに適用] を選択します。 アクションから タブ。

- 下のボックスをクリックして前のステップからの出力を選択します。
- 出力を選択します 動的コンテンツの追加を使用して アイコン。

ステップ 7 – 各メールのデータを抽出する
- [アクションを追加] をクリックします。 .

- フィルタ配列を検索 検索バーで [配列をフィルタリング] を選択します。
- 値 を選択します 右側のプラス アイコンをクリックすると、ウィザードが表示されます。

- [動的コンテンツの追加] を選択します。 [メール] を選択します。 そこから。

- 現在のアイテムを選択します 3 番目のフィールド。

ステップ 8 – 電子メール アラート用の HTML を生成する
- [アクションを追加] をクリックします。 [HTML テーブルの作成] を検索します。
- [HTML テーブルの作成] を選択します。 .

- 差出人内 フィールドでボックスをクリックし、[動的コンテンツの追加] をクリックします。 アイコン。
- フローティング ウィザードから、本文を選択します。 .
- [詳細オプションを表示] をクリックします。
- 列から フィールドでカスタムを選択します .

- テーブル名に含める列の名前をヘッダーに入力します。 列。
- 1 番目 ヘッダー の列 フィールドに「期限」と記入します。
- 2 番目 列の式で次の数式を使用します。 バー:
formatDateTime(item()['Deadline'],'MMM d,yyyy')

期限 の値をフォーマットします。 明確な形式の列。
- トピックという名前の別の列を追加します。
- 式 で次の数式を使用して列の値を設定します。 バー:

ステップ 9 – Outlook でメールを自動的に作成する
- 別のアクションを追加します メールを送信 という名前 (V2 ).
- [宛先 ] をクリックします。 フィールドに移動し、[動的コンテンツの追加] をクリックします。 .
- フローティング ウィザードから、現在のアイテムを選択します。 リストから。

- 件名にメールの件名を入力します。 フィールド。
- 体内 フィールドで、[動的コンテンツの追加] をクリックします。 そして出力を選択します。 リストから。

- [詳細オプションを表示] をクリックすると、詳細オプションを選択できます。
- [保存] を選択します。 .
- フローの準備ができました。 [テスト] をクリックして結果をテストできます。 ボタン。

- 手動を選択します フローを手動でテストします。
- Outlook を開きます。 アプリケーションを使用して自動メール アラートを確認する

最終出力
- Outlook のサンプル メッセージは次のとおりです。 アプリケーション。

方法 2 – VBA を使用して Excel ワークシートから自動電子メール アラートを送信する
手順:
- 前述した次のデータセットを使用します。
- 期限が 1 の間の場合 と 7 本日から数日以内に、自動メール アラートが生成されます。

- VBA を開くには マクロ、Alt キーを押します + F11 .

- Microsoft Visual Basic for Application ウィンドウがポップアップします。
- 挿入 から タブで、モジュールを選択します。 オプション。

- 次の VBA を貼り付けます。 モジュール内のコード:
Public Sub SendReminderMail()
'Declare the variables
Dim XDueDate As Range
Dim XRcptsEmail As Range
Dim xMailContent As Range
Dim xRngDn As Range
Dim xCrtOut As Object
Dim xValDateRng As String
Dim xValSendRng As String
Dim k As Long
Dim xMailSections As Object
Dim xFinalRw As Long
Dim CrVbLf As String
Dim xMsg As String
Dim xSubEmail As String
On Error Resume Next
'To select the date column insert a input box
Set XDueDate = Application.InputBox("Select the column for Deadline/Due Date date column:", "ExcelDemy", , , , , , 8)
If XDueDate Is Nothing Then Exit Sub
'Insert a input box for selecting the recipients
Set XRcptsEmail = Application.InputBox("Choose the column for the email addresses of the recipients:", "ExcelDemy", , , , , , 8)
If XRcptsEmail Is Nothing Then Exit Sub
'To enter the text mail, insert a input box
Set xMailContent = Application.InputBox("In your email, choose the column with the reminded text:", "ExcelDemy", , , , , , 8)
If xMailContent Is Nothing Then Exit Sub
'Count rows for the due dates
xFinalRw = XDueDate.Rows.Count
Set XDueDate = XDueDate(1)
Set XRcptsEmail = XRcptsEmail(1)
Set xMailContent = xMailContent(1)
'Set command to open MS Outlook Application
Set xCrtOut = CreateObject("Outlook.Application")
'Apply For loop to conduct the operation in each row one by one
For k = 1 To xFinalRw
xValDateRng = ""
xValDateRng = XDueDate.Offset(k - 1).Value
'Apply If condition for the Due Date values
If xValDateRng <> "" Then
'Condition set to send mail if the difference between due dates and current date is greater than 1 and less than 7 days
'Means 1 < X< 7, X = Due Date - Current Date
If CDate(xValDateRng) - Date <= 7 And CDate(xValDateRng) - Date > 0 Then
xValSendRng = XRcptsEmail.Offset(k - 1).Value
'Create the subject, body and text contents with the required variables
xSubEmail = xMailContent.Offset(k - 1).Value & " on " & xValDateRng
CrVbLf = "<br><br>"
xMsg = "<HTML><BODY>"
xMsg = xMsg & "Dear " & xValSendRng & CrVbLf
xMsg = xMsg & "Text : " & xMailContent.Offset(k - 1).Value & CrVbLf
xMsg = xMsg & "</BODY></HTML>"
'Create the email
Set xMailSections = xCrtOut.CreateItem(0)
'Define the position to place the Subject, Body and Recipients Address
With xMailSections
.Subject = xSubEmail
.To = xValSendRng
.HTMLBody = xMsg
.Display
.Send
End With
Set xMailSections = Nothing
End If
End If
Next
Set xCrtOut = Nothing
End Sub

- 保存後、F5 を押します。 プログラムを実行します。
- 「再生」アイコンをクリックしてプログラムを実行することもできます。

- 入力メッセージ ボックスが表示されます。
- 期限の列を選択します。 D5:D10 を選択しました。 範囲を選択してOKを押します。
- 別の入力メッセージ ボックスが表示されます。
- メールアドレスの列を選択します。 B5:B10 を選択しました。 範囲を選択してOKを押します。
- 最後の入力メッセージ ボックスが表示されます。
- トピックの列を選択します。 。 C5:C10 を選択しました。 範囲を選択してOKを押します。

- すべてのメールは期限前にリマインダー メールとして送信されます。
- 上記の自動プログラムを使用して、メールを手動で送信することもできます。アポストロフィ (‘) を入力します。 ) (.send の前) ) コマンドを使用して無効にします (下の図を参照)。

- 完成した下書きはすべてアプリで入手できます。
- [送信] ボタンをクリックして、メールの送信先を選択します。

練習用ワークブックをダウンロード
関連記事
- Excel でポップアップ リマインダーを作成する方法
- Excel で通知やリマインダーを作成する方法
- Excel でアラートを作成する方法
- Excel VBA でアラートを無効にする方法
- Excel で期日リマインダーの式を設定する方法
- Excel で期日リマインダーを設定する方法
<
-
Office 365周期表により、Office365エコシステムを理解しやすくなります
Office 365 Microsoftの製品は、作業を簡単にするように設計されていますが、サービスとアプリケーションが重複していると、混乱を招くことがよくあります。ほとんどのユーザーは、Office 365とは何か、Office365が提供するものすべてを知りません。 Office 365は幅広く、Word、Excel、PowerPoint、Outlookよりもはるかに多くの機能を提供します。この幅広い機能により、Office365は不可解になります。ほとんどのサービスは同じことを行うため、ユーザーは混乱します。 Office365周期表 すべての混乱を解決し、Office 365
-
MicrosoftWordおよびGoogleドキュメントでハンギングインデントを作成する方法
MicrosoftWordおよびGoogleDocsドキュメントでハンギングインデントを作成しようとしている場合は、この記事が役立ちます。このインデントを1つの段落に適用するか、複数の段落に適用するかに関係なく、両方を瞬時に実行できます。両方のツールで使用できるワンクリックボタンがないため、いくつかのオプションを実行する必要があります。ここで手順を確認しましょう。 ぶら下げインデントは、ドキュメント内の他のスタイルとは異なって見えます。このスタイルを適用すると、段落の最初の行がページの余白に固定され、他の行が要求されます。 Webページ用であろうとオフラインドキュメント用であろうと、そのよう