UiPathで自動化したいことは、すでにExcelに書き込まれている情報に加えて、ウェブサイトにある情報取得し、取得した情報をExcelに追加していくという作業を行います。
作成済みのワークフローの流れは以下の通りです。
1.情報.xlsxすべてをデータテーブル型変数に読み込む
2.データテーブル型変数の中身に新しい5人分を追記
3.情報.xlsxにデータテーブル型変数の中身すべてを書き込む
という処理になおり、
情報.xlsxに、新しく追加する5人分のデータの箇所のみ書き込みをし、それ以外の箇所には書き込みをしない処理に修正したいのですが、どうすればよいでしょうか。
1 Like
ryoko
(ryoko)
2
いらせられませ、ようこそForumへ 
Webから読み込む情報の項目が決まっているのであれば、
情報.xlsxで読み込んだデータテーブルに追加で入れるのではなく、
Web情報は新規データテーブルに格納し、Excelに追記の方が良いかも?
以下は情報.xlsxがA1から始まるデータで、ヘッダーが1行の例です。
-
情報.xlsxから読み込んだデータテーブルを読み込む…データテーブルA
⇒行数取得用。
-
『データ テーブルを構築』Activityで情報.xlsxと同ヘッダーの新規データテーブルを作成…データテーブルB
-
Webから取得した情報をデータテーブルBに格納
-
『範囲に書き込み』の開始セルに、列アルファベット+データテーブルAの行数+2を設定。『ヘッダーを追加』はチェックしない。
⇒例:“A”+(データテーブルA.rows.count+2).tostring
※+2は、ヘッダー1行と最終行オフセット1行の合計
多分これで行けるかと思うのですが、どうでしょ?
3 Likes
111701
(しゅてふぁん・たいちょう)
3
ようこそforumへ。
アクティビティは、次を使います
1.情報.xlsxで、データテーブル作成
→Excelアプリケーションスコープ 範囲読み込み
→代入
(ここで、行数を数える
行数は、A.rows.count)
2ウェブサイトからデータ取得し、データを保存
→webスクレーピング を行ったあと
→データテーブル構築 で、データ取得
3.情報.xlsxに書き込み
→繰り返し各行
→範囲に書き込み
この順でいかがでしょうか?
2 Likes
ご回答ありがとうございます。
一度、作成してみます。
ご回答ありがとうございます。
参考にさせていただきます。
すみません。
1の行数取得用のアクティビティ?の作成方法がよく分からないので、
詳しく教えていただけると幸いです。
すみません。UiPath初心者で理解できないことが多いのですが
1の操作の代入は何を代入するのですか?
分かりやすく教えて頂けると幸いです。
ryoko
(ryoko)
8
1の行数取得用のアクティビティは、『範囲を読み込み』アクティビティです。
『データ テーブルを構築』Activity使うよりは表抽出機能でデータテーブル作った方が簡単だな!と思ったので、表抽出使った例のサンプルです。(CommunityEditionの2021.4.4使用)

上記を実行すると、こんな感じで既存行の下に追記処理をします。

3 Likes
111701
(しゅてふぁん・たいちょう)
10
1Excelアプリケーションスコープ
→範囲読み込み
2 webサイトからほしい情報を読み込みをします
web を使い、webスクレーピング
→サイトから、名前が掲載しているサイト
を表示
→名前が表示されているページをスクレーピング
→構造化データとして取得
3 構造化データとして取得するとき、
データテーブル型として作成
4 繰り返し各行を使い、1のExcelに書き込む
このとき、書き込み数をカウントしたいので
代入アクティビティ使います
この4手順は
代入アクティビティ count=1
繰り返し各行 前3データを前1データへ
行数分書き込み
代入アクティビティ count=count+1
このながれでいかがでしょうか?
うまくいかないでしょうか?
2 Likes
ryoko
(ryoko)
13
どういたしまして!
無事に成功したら、私なり @111701 さんの回答に
を入れてくださいませ~。
のちのち同じ問題に直面した人がForum内を検索した時、解決方法を得られた質問として検索しやすくなります 
1 Like
111701
(しゅてふぁん・たいちょう)
14
@Mishima_Anne さん、こんばんわ
@ryokoさんのプログラムうまく動きましたか?
@11701記載の流れについて、前回記載した番号にあわせて一部追記します。
「2.webサイトからほしい情報を読み込みます」に
ついて、変更が一部あります。
前回
→サイトから名前が書いてあるサイトを表示
→名前のページ分をスクレーピング
→構造化データを取得
今回のご返信
→構造化データを取得
(この際、表全体で取得 とする)
ここで、一旦ウェブスクレーピング終わり。
構造化データのところで、検索する名前が
かわってもよいように、ワイルドカード
設定してください。
→構造化データの前のところに、
代入アクティビティを挿入して、つぎを
作成
Extractdatatable=nothing
そうすると、他の名前で検索してもウェブ上から
結果を拾って、構造化データ作成すると思います
丁寧なご回答ありがとございます。
質問したものは、解決しました。
対応いただきありがとうございました。
1 Like
さらに、質問なのですが
前回作成したソースをフレームワークに組み込みたいのですがどうすれば良いでしょうか。
111701
(しゅてふぁん・たいちょう)
17
解決できてよかったですね。
フレームワークワークについてのご質問ですが、
たいへんもうしわけありませんが、
別途、質問テーマ設定していただき、多数の方から
回答を集めていただけますか?よろしくお願いします
system
(system)
Closed
18
This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.