For each row と lookup range

お世話になります。
以下の図のC列にF:GをlookupしてG列の値を入れたいと思っています。
For each row と lookup rangeアクティビティを使おうと思っているのですが、
うまくいきません。。(順番にlookupされない。。)

image

他の方法でもよいのですが、ロボットの詳細を教えていただけると助かります。

よろしくお願いいたします。

lookup rangeアクティビティを使用する際にプロパティで値を指定していると
思いますが、どのように指定していますか?

Excel上の項目は固定で、配列か何かで保持しているのでしょうか?
それとも項目の列をデータテーブルに読込しているのでしょうか?

@ytakayama

ご返信ありがとうございます。
はい、そのValueが問題で知りたいところなのですが、
A:Cをデータテーブル変数に入れて指定したのですが(dt.Rows(0)(“項目”))
次の行へいかないので、指定方法を知りたいです。
初心者ですみません。
よろしくお願いします。

@dora様

dora さんが行っているようにA:C列までを対象にするのであれば、
ForEachRowアクティビティで全行回してあげて、
row.Item(“項目”).ToStringで取得可能かと思います。

Lookup Rangeだとセルのアドレスしか取れないので、
入力用と検索用のデータテーブルを作成して検索と言う感じでも良いのかな?

test.zip (7.8 KB)

1 Like

データテーブルを検索アクティビティいいですね。始めて知りました。
セルのアドレスとってその隣に入力するかなと思ってましたが、
こちらの方が良さそうです。

@tatemit
ありがとうございました!
これでできそうです!

Doubleという変数の型ってどいういうことですか?

@ytakayamaさん

いろいろありがとうございます!
勉強になりました!

1 Like

始めは数値だったのでint32で取ったのですが、
Double型だからintに入力出来ないってエラーになったので型を合わせただけなので深い意味はないです…(汗

ドキュメントを見るとObject型が基本のようなので、
DoubleではなくObjectにしてあげた方が良さそうです。

なので、出力のセル値は「row(“先週”)」で代入のアクティビティは削除でも良いと思います。

こんにちは

DataTableをLeft Joinして、不要なColumnを削除するほうがシンプルのような...ループ不要なので。以下サンプルです。

2 Likes

@Yoichiさん

ありがとうございます。
Join Data Tablesというのがあるのですね!
存じませんでした。
お手数ですが、プロパティのスクショ頂けますでしょうか?
勉強します!

こんにちは

以下になります。

img20191226-4

1 Like

@Yoichiさん

ありがとうございます!

1 Like