nagumo
(asahi)
1
UiPath初心者です。
エクセルの複数シートに内容別でメールの本文があるので、シート毎にメールを分けて全シート分送りたいです。
シート1枚目のメールは送信出来るんですが、2枚目以降の全シート分のメールが送れないです。
必要な情報かわかりませんが、メールの内容ごとに添付ファイルを指定フォルダの中から選別して、さらにその添付ファイルを暗号化するアプリを通すロボットのうしろに組み込みたいので、現状は繰り返しの中の『指定フォルダの中に特定のファイルがあるかどうかの条件分岐』の中のThenの中にoutlookでメールを送るアクティビティを入れています。
よろしくお願いいたします。
cheez_RPA
(いわさき りょうすけ (UiPath Japan MVP 2019 - 2021))
2
実装したい内容が十分に理解できていないのですが、確認させてください。
「送れない」というのは、「エラーが発生して送れない」のか、「エラーは出ないが2枚目以降のシートが処理されない」のか、どちらでしょうか。
もしエラーが出ているのであれば、エラーの情報(表示されるメッセージと、Detail(詳細)を表示したときの内容)を共有していただけると嬉しいです。
nagumo
(asahi)
3
ご回答いただきありがとうございます。
シート2枚目以降は送り方(メソッド?)がわからなくて送れないです。
シート1枚目はそのシート名とセルの範囲を指定してメールの本文に入れるやり方にしました。
シート名を変数にして繰り返しの中に入れたので全シート分のメールが作成されるかなと思ったんですがだめでした。
cheez_RPA
(いわさき りょうすけ (UiPath Japan MVP 2019 - 2021))
4
まずは、Excelファイルに含まれるすべてのシートのシート名を把握しないといけませんね。すべてのシートのシート名は、下記の方法で取得してみてください。
上記ページにもありますが、取得したシート名を使ってループをさせてあげれば、ご希望の動作になるように思います。一度お試しいただければと思います。
nagumo
(asahi)
5
ご丁寧にリンクまで貼っていただいてありがとうございます。
『ブックの全シートを取得』はすでに試してみて、『1行書き込み』でシート名を全シート分取得出来たんですが、そのうしろ(繰り返しの外)に『範囲を読み込み』でシートを取得したシート名一覧(変数)にしたんですが、「System.Collections.Generic.List(Of String)の値をStringに変換できません」というエラーが出てしまったのでその方法を諦めてしまっていました。
そもそも全シート分の指定セル範囲を取得する方法が間違っているのでしょうか?
cheez_RPA
(いわさき りょうすけ (UiPath Japan MVP 2019 - 2021))
6
取得した「シート名一覧」は、一覧なので複数のシート名が入っています。これを配列といいます。
「範囲を読み込み」アクティビティで指定できるシート名は1つだけで、配列は前述のとおり複数のシート名が入っているので、エラーになっています。
配列からシート名をひとつずつ取る方法として、「繰り返し」(For each)アクティビティを利用しましょう。使い方については、上記リンクのなかでも記載がありますので一度お試しいただければと思います。
nagumo
(asahi)
7
上記リンクの後者を試してみました。
この範囲を読み込みのところに具体的に何をいれたら全シート分の内容が読み取れますか?
配列とかもよくわかっていない初心者で本当にすみません。
cheez_RPA
(いわさき りょうすけ (UiPath Japan MVP 2019 - 2021))
8
「範囲を読み込み」アクティビティを、「繰り返し(コレクションの各要素)」アクティビティの中にいれましょう(「1行を書き込み」アクティビティの下でOKです)。
シート名を入力する位置には、 item
(もしエラーが出たら、item.ToString
) を入れて下さい。この item
というのが、コレクションに指定した変数( シート名一覧
という配列)のなかからシート名を1つずつ抜き出した仮置きの変数になっていますので、これをシート名として扱ってあげれば動作すると思います。
nagumo
(asahi)
9
出来ました!!
本当にありがとうございます!
これをメインのロボットに組み込んでみます!
初歩的な質問ですみませんでした。
1 Like
cheez_RPA
(いわさき りょうすけ (UiPath Japan MVP 2019 - 2021))
10
解決されたようで何よりです。
宜しければ、解決のきっかけとなった投稿を「解決策」としてマークしていただきますようお願いします。
今後この投稿を見つけた方が、解決の方法をスムーズに見つけられるようにご協力下さい。
nagumo
(asahi)
11
解決策マークつけさせていただきました。
そしてもう1点質問したいことが出来てしまったのですが、『繰り返し』の中に『繰り返し』を入れることは出来ないんでしょうか?
itemが2つになってしまいまして・・。
最初の質問と内容が違うので新たに別で投稿した方がよろしいでしょうか?
cheez_RPA
(いわさき りょうすけ (UiPath Japan MVP 2019 - 2021))
12
可能です。ただし、「繰り返し」アクティビティの要素に入力する仮置きの変数の名称は、それぞれのループで変えてあげてください(2つ目のループの中で仮置きの変数を使いたいときに、どちらのループのものを使えばいいのかがわからなくなりますので)。
もし上記で解決されないようでしたら、別のトピックとしてご質問いただければと思います。
system
(system)
Closed
14
This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.