nagumo
(asahi)
1
Uipath初心者です。
件名に特定のワードを含むメールを除外したOutlookのメールの件名を取得して、エクセルに転記させたいです。
エクセル(ダミー用マスター)のA列に除外ワードを入力する
→そのシートをデータテーブルで読み込む
→フィルターで0列目が空白のセルを削除する
→そのデータテーブルの各行を繰り返しで0列目を”変数(除外ワード)”に入れる
→その繰り返しの中でメールを全件取得してメールメッセージリストの型の”変数(メール)”に入れる
→その”変数(メール)”の中で繰り返しで件名だけ取り出して”変数(件名)”に入れる
→条件分岐で”変数(件名)が”変数(除外ワード)”を含む場合Thenは何もしないでElseで空のデータテーブルを構築してその中にデータ行を追加で”変数(件名)を追加していく
→出来上がったデータテーブルをエクセルに転記する
上記の流れで作りましたが、エクセルに入力した除外ワードの内、1つ目のワードしか除外されません。
(正確に言えばヘッダーを追加してるので2行目のワードのみ除外されて、3行目以降に入力したワードが除外されません。)
どなたかよろしくお願いいたします。
ダミー用マスター.xlsx (14.6 KB)
質問用ダミー.xaml (17.1 KB)
shinji
(Shinji Miyagi / みやぎ)
2
ざっと見ました。間違ってたらごめんなさい。
1)ループが逆のほうが良いと思います。
「datatable_除外のループの中で、list_受信メールでのループ」ではなく、「list_受信メールでのループの中で、datatable_除外のループ」
2)ダミーワードマスターの列名はファイルに記載して「必ず1行目は列名になっている」ようにしたほうが良いと思いますです。
3)ダミーワードマスターは、上から並べて書くようにしていれば「データ テーブルをフィルター」は不要かと思いますです。
4)除外ワードを含むと判定したら、繰り返しをブレークアクティビティを入れて次のループに進むと効率的かと思いますです。
nagumo
(asahi)
3
ご回答ありがとうございます。
やってみましたが、除外ワードは除外されず、除外ワードを含んでいないメールの件名がなぜか2件ずつ取得されました・・・
nagumo
(asahi)
4
アップロードしたザムルファイル以外のやり方で結構です。
どなたかざっくりの流れなどを教えていただけないでしょうか・・・
Yoichi
(Yoichi)
5
こんにちは
やり方はいろいろありますが、例えば以下のような方法でも可能です。

lsitResultはList<String>
です。
除外キーワードはdtの"除外ワード"列に入っていると仮定しています。
1 Like
nagumo
(asahi)
6
ご回答ありがとうございます。
代入に上記の式を入れましたが、『有効な式の継続文字が必要です』とエラー表示されました。
あと、Outlookメールメッセージを取得で取得したメールのリストはListMailMessageの型の変数に入れたんですがそれは使わないですか?
Yoichi
(Yoichi)
7
こんにちは
代入に上記の式を入れましたが、『有効な式の継続文字が必要です』とエラー表示されました。
どこかに入力ミスがあるのではと思います。以下コピーください。
mails.Select(Function(m) m.Subject).Where(Function(s) not dt.AsEnumerable.Any(Function(r) s.Contains(r("除外ワード").ToString))).ToList
あと、Outlookメールメッセージを取得で取得したメールのリストはListMailMessageの型の変数に入れたんですがそれは使わないですか?
mailsがそれになります。
1 Like
nagumo
(asahi)
8
ご回答ありがとうございます。
これって除外ワードを件名に含むメールを除いたメールのリストが取得されるってことですか?
最終的に除外メールを除いたメールリストの件名だけを取得したいです。
str_件名にlsitResult.Subjectを代入しようとしたところ、SubjectはListStringのメンバーではありませんと表示されてしまいました。
Yoichi
(Yoichi)
9
こんにちは
いいえ、除外済みのメール件名のリストです。
For EachでlistResultをイテレートするとitem が中身(件名)になります。
1 Like
nagumo
(asahi)
10
出来ました😭
うれしくて泣いてます😭
いつも本当にありがとうございます😭
お礼したいくらいです😭
1 Like
system
(system)
Closed
11
This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.