通知を受け取る

UiPath StudioX

UiPath StudioX ガイド

チュートリアル: 自動化されたメールからデータを抽出し、デスクトップ アプリケーションにデータを移動する

このチュートリアルでは、特定のデータを特定の書式設定に準拠したテキスト ブロックから容易に抽出できるようにするオートメーションを作成します。銀行勤務で、新しい入金取引に関連する多数のメール通知を受信しているとします。各メールを開き、手動で金額をコピーしてテラー アプリケーションに貼り付け、処理済みの各メールを Outlook フォルダーに移動する必要があります。メールは自動化され、すべて同じテンプレートに準拠し、同じテキストがメール本文の必要な金額の隣に常に表示されます。例:

!!!This is an automated message, please do not respond.

A new deposit transaction can be submitted:

Cash in: $10
On Us Check: $20
Not On Us Check: $15

Thank you.

既定のプロジェクト ノートブックには、必要な金額のみを抽出できる数式が含まれています。「ステップ 2: プロジェクトを設定し、必要なファイルを取得します。」で説明するように、プロジェクト ノートブックを手動で編集し、1 通のメールから値を抽出します。オートメーション プロジェクトを設定して類似するすべてのメールから同じ値を抽出します。

オートメーションにより、入金取引に関連する自動化された最新の未読メールを格納する Outlook 検索フォルダー内の各メールについて、次のタスクが実行されます。

  1. メールの本文がコピーされ、データがプロジェクト ノートブックに貼り付けられます。ここで、テキストを操作するために Excel の数式を使用して特定のデータが抽出されます。
  2. デスクトップ アプリケーションでデータがフィールドごとに入力され、送信されます。
  3. メールが既読になり、処理済みメール用の Outlook フォルダーに移されます。

We will create a project and start by adding a Use Desktop Outlook App activity to indicate the Outlook account to use. We will then add a For Each Email activity, and then, to indicate the automation must be executed for each email, we will place all subsequent activities inside For Each Email. We will add a Write Cell activity to copy the body of each email to a specific cell in the Project Notebook. We will then add the UI automation activities needed to enter the data in our desktop application, and finally activities to mark the email as read and move the email.

ステップ 1: Outlook にフォルダーを 2 つ作成します。

この例では、件名が New Deposit Available で前述の本文を持つメールを使用します。
指定の件名を持つ、本日以降の未読メール用の検索フォルダーを作成するには、次の操作を行います。

  1. Outlook を開き、[フォルダー] ペインで [検索フォルダー] を右クリックし、[新しい検索フォルダー] を選択します。
  2. [新しい検索フォルダー] ウィンドウで、[カスタム検索フォルダーを作成する] > [選択] を選択します。
  3. [検索フォルダーのカスタマイズ] ウィンドウの [名前] ボックスに Today's deposits を入力し、[条件] を選択します。
  4. [検索フォルダーの条件] ウィンドウの [メッセージ] タブで、以下の手順を実行します。
    • [時間の条件] の隣にあるドロップダウン メニューから、[受信日時][今日] を選択します。
    • [検索する文字列] ボックスに、「New Deposit Available」と入力します。
    • [検索対象] ドロップダウン メニューから、[件名] を選択します。
  5. [詳細設定] タブで、[開封状況] を選択し、隣接するドロップダウン メニューから [未読] を選択します。
  6. [OK] を 3 回クリックして、ウィンドウを選択し、フォルダーを保存します。
  7. 受信ボックスに ProcessedDeposits というフォルダーを作成します。これは、処理後にメールが移されるフォルダーです。
  8. 特定の件名と特定のテンプレートに準拠した本文を利用するオートメーションで使用するメール アカウントに、メールを 2、3 通送信します。ただし、各メールには異なる金額を入力します。
  9. 送信後、Today's deposits 検索フォルダーに該当のメールが表示されることを確認します。

ステップ 2: プロジェクトを設定し、必要なファイルを取得します。

  1. 既定の設定を使用して新しい空のプロジェクトを作成します
  2. 該当のプロジェクトのプロジェクト ノートブックを開き、メールの本文を Text シートのセル B4 にコピーし、セル D5:D7 の 3 つの値それぞれの左側にテキストを手動で入力します。セル D5 には Cash in: 、セル D6 には On Us Check: 、セル D7 には Not On Us Check: を入力します。値の右側にはテキストは存在しないため、セル E5:E7 は空になるはずです。セル F5:F7 に既に入っている数式は、下図のように、値を抽出します。
1438

プロジェクト ノートブックを保存して閉じます。

  1. このチュートリアルでは、このページの下部にあるボタンを使用して、オートメーション プロジェクトを含むアーカイブをダウンロードして展開します。ファイル DoubleUI.exe をダブルクリックし、DoubleUI アプリケーションを開きます。

ステップ 3: Outlook アカウントをプロジェクトに追加し、検索フォルダーでメッセージを反復処理します。

  1. [アクティビティ] パネルで [メール] タブを選択し、[デスクトップ版 Outlook アプリを使用] をダブルクリックします。アクティビティがデザイナー パネルに追加されます。
  2. このアクティビティの [アカウント] フィールドには、あらかじめ既定のメール アカウントが入力されています。別のアカウントを使用する場合は、ドロップダウン メニューから選択します。
    [参照名] フィールドは既定値 Outlook のままとして、オートメーションでアカウントを参照するときは、この名前を使用します。
  3. [アクティビティ] パネルで [繰り返し (各メール)] アクティビティをドラッグし、[デスクトップ版 Outlook アプリを使用] アクティビティ内にドロップします。
  4. [繰り返し (各メール)] アクティビティで、[対象フォルダー] フィールドの右側にあるプラス記号 plus button をクリックし、[Outlook] > [フォルダーを検索] > [Today's deposits] を選択します。
    これで、Outlook 検索フォルダー「Today's deposits (今日の預金)」内のメールに対して反復処理を実行するように指定したことになります。
596

ステップ 4: メール本文をプロジェクト ノートブックのセルにコピーし、テキストを抽出します。

  1. [アクティビティ] パネルで [Excel] タブを選択し、[セルに書き込み] アクティビティをドラッグして [繰り返し (フォルダー内の各ファイル)] アクティビティ内にドロップします。
  2. [セルに書き込み] アクティビティで、以下の手順を実行します。
    • [書き込む内容] フィールドの右側にあるプラス記号 plus button をクリックし、[CurrentMail] > [本文] を選択して、反復処理で現在のメールの本文をコピーすることを指定します。
    • [書き込みむ場所] フィールドの右側にあるプラス記号 plus button をクリックし、[プロジェクト ノートブック (Notes)] > [Excel 内で示す] を選択してファイルを Excel で開きます。ファイルの Text シートを選択し、セル B4 を選択し、Excel のリボンの [UiPath] タブで [Confirm (確定)] をクリックします。これで、メール本文をプロジェクト ノートブックの Text シートのセル B4 に貼り付けるように指定したことになります。
621

ステップ 5: デスクトップ アプリケーションとアプリケーション内で実行するアクティビティを追加します。

  1. [アクティビティ] パネルで [アプリ/Web] タブを選択し、[アプリケーション/ブラウザーを使用] アクティビティをドラッグして、[セルに書き込み] アクティビティの下にある [繰り返し (各メール)] アクティビティ内にドロップします。[アプリケーション/ブラウザーを使用] アクティビティがデザイナー パネルに追加されます。
  2. [アプリケーション/ブラウザーを使用] アクティビティで、[アプリケーションを指定] をクリックして、マウス ポインターを DoubleUI アプリケーションの上に移動します。ウィンドウが強調表示されるので、DoubleUI の任意の場所をクリックします。
    [アプリケーション/ブラウザーを使用] アクティビティが更新され、ウィンドウのスクリーンショットがアクティビティに表示されます。
  3. [アクティビティ] パネルで [アプリ/Web] タブを選択し、[文字を入力] アクティビティをドラッグして [アプリケーション/ブラウザーを使用] アクティビティ内にドロップします。[文字を入力] アクティビティが [アプリケーション/ブラウザーを使用] アクティビティに追加されます。
  4. [文字を入力] アクティビティで次の操作を行います。
    • [画面上でターゲットを指定] をクリックし、DoubleUI.exe アプリケーションの [Cash In] フィールドにマウス ポインターを移動します。フィールドが強調表示されたらクリックします。テキスト フィールドがターゲットとして、フィールドの横の [Cash In] ラベルがアンカーとして識別されます。[選択オプション] ウィンドウの [確認] をクリックして選択内容を保存します。ターゲットとアンカーの画像が [文字を入力] アクティビティに表示されます。
      これで、DoubleUI.exe アプリケーションの [Cash In] フィールドに文字を入力するように指定したことになります。
    • [以下を入力] フィールドの右側にあるプラス記号 plus button をクリックし、[Excel] > [Excel 内で示す] を選択します。Excel ファイルで F4 セル (入金額の値) を選択し、Excel のリボンの [UiPath] タブで [Confirm (確定)] をクリックします。[以下を入力] フィールドに「[Excel] Text!F5」の形で選択内容が表示されます。
      これで、Excel ファイルから入金の額を DoubleUI.exe アプリケーションの [Cash In] フィールドにコピーするように指定したことになります。
  5. ステップ 3 ~ 4 を 2 回以上繰り返し、[文字を入力] アクティビティを追加し、Excel ファイル (それぞれセル F6 および F7) から [On Us Check] および [Not On Us Check] の値を DoubleUI アプリケーションの対応するフィールドにコピーします。
  6. [アクティビティ] パネルで [アプリ/Web] タブを選択し、[クリック] アクティビティをドラッグして、[アプリケーション/ブラウザーを使用] アクティビティ内の最後の [テキストを取得] アクティビティの後にドロップします。[クリック] アクティビティが [アプリケーション/ブラウザーを使用] アクティビティに追加されます。
  7. [クリック] アクティビティで [画面上でターゲットを指定] をクリックし、DoubleUI.exe アプリケーションの [Accept] ボタンにマウス ポインターを移動します。ボタンが強調表示されたらクリックします。[Accept] ボタンがターゲットとして、[Cancel] ボタンがアンカーとして識別されます。[選択オプション] ウィンドウの [確認] をクリックして選択内容を保存します。ターゲットとアンカーの画像が [クリック] アクティビティに表示されます。
    これで、DoubleUI.exe アプリケーションの [Accept] ボタンをクリックするように指定したことになります。
286

ステップ 6: メールを既読にし、Outlook フォルダーに移動します。

  1. [アクティビティ] パネルで [メール] タブを選択し、[メールを既読/未読にする] アクティビティをドラッグして [アプリケーション/ブラウザーを使用] の下にある [繰り返し (各メール)] アクティビティ内にドロップします。[メールを既読/未読にする] アクティビティがデザイナー パネルに追加されます。
  2. [メールを既読にする] アクティビティで、次の操作を行います。
    • [メール] フィールドの右側にあるプラス記号 plus button をクリックし、[CurrentMail] を選択し、現在のメールの状態の設定処理を繰り返すよう指定します。
    • [マーク] ドロップダウン メニューから [既読] を選択します。
  3. [アクティビティ] パネルで、[メールを移動] アクティビティを [メールを既読/未読にする] アクティビティの下にある [繰り返し (各メール)] アクティビティ内にドラッグします。[ファイルを移動] アクティビティがデザイナー パネルに追加されます。
  4. [メールを移動] アクティビティで、以下の手順を実行します。
    • [メール] フィールドの右側にあるプラス記号 plus button をクリックし、[CurrentMail] を選択し、現在のメールの移動を繰り返すよう指定します。
    • [移動先] フィールドの右側にあるプラス記号 plus button をクリックし、[Outlook] > [受信トレイ] > [ProcessedDeposits] を選択します。これで、メールを ProcessedDeposits フォルダーに移動するように指定したことになります。
541
  1. StudioX のリボンで [保存] をクリックしてオートメーションを保存し、[実行] をクリックしてオートメーションを実行します。
    Outlook 検索フォルダー内の各メールについて、本文が Excel にコピーされ、データが抽出されて DoubleUI デスクトップ アプリケーションに取り込まれます。次に、メールが既読にされ、別のフォルダーに移されます。

サンプルをダウンロードする

2 年前に更新



チュートリアル: 自動化されたメールからデータを抽出し、デスクトップ アプリケーションにデータを移動する


改善の提案は、API リファレンスのページでは制限されています

改善を提案できるのは Markdown の本文コンテンツのみであり、API 仕様に行うことはできません。