Excel範囲を探す-数字を指定

困っているのでご教授お願いします。
やりたいこと
1. Excelシートから対象の月を探す
2. A商品売上のあるセルを探す
3. 1から列のみ取得&2から行のみ取得
4. 3の合わせた情報からセルを割り出し月の売上をセルに入力

月は行で探すのですが、複数個所にあります。
何列目にあるのかを特定したいだけなので
範囲を検索アクティビティ 範囲 5:5
としています。
Excelシートイメージはこのようになっております。

  11月 12月 1月 2月

A商品売上 ○○ ○○ ○○ ○○
返品 ○○ ○○ ○○ ○○
11月 12月 1月 2月
B商品売上 ○○ ○○ ○○ ○○
返品 ○○ ○○ ○○ ○○

困っているのが、
2月と指定して検索しても、12月が一致してしまいます。
1月の場合は11月が一致しています。
ほかのアクティビティを利用したほうがよいでしょうか。
何か良い方法があればアドバイスください。
よろしくお願いいたします。

こんにちは

部分一致検索となっているためと思われます。
表の範囲が固定的であれば、範囲読み込みで上の表と下の表をそれぞれ
DataTableとして読み込んで、それを処理した方が良いように思えます。

1 Like

Yoichiさん
アドバイスありがとうございます。
部分一致となるのですね。
完全一致で検索をしたいので、DataTableとして読み込むことが望ましいということですね。
添付のような集計表なのですが、DataTableで読み込み「月」のあるColumnを探す。処理ということでしょうか。
青い列にデータを書き込みます。

こんにちは

この場合明示的に検索する必要はないかもしれません。
表が固定的であるなら、範囲読み込みアクティビティで、範囲を例えば"C4:N7" ヘッダ付きで
読み込み、その結果をdtとすると

dt.Rows(1)("2月") = "入力したい値"

とするとDataTableに書き込めますので、最後にこれをワークシートに書き戻せばOKかと思います。

Yoichiさん
回答を素早く頂けるので業務につながりとても助かります。
ありがとうございます!

月を探すのではなく、Excelの書き込み部分をdtとし、該当のセル部分にいただいた式を代入するのですね。
月を探すことばかり考えていました。
これで何とかなりそうです。
うまく行きそうにない時はまたご相談させてください。
この方法で試してみます。
感謝感謝です。ありがとうございます。

Yoiichiさん

解決とさせていただいたのに質問をしてしまい、申し訳ありません。
Uipath初心者のため、お手数おかけします。
手順はこのようだと思っています。
1.Excel実績表をdtに入れる
2.dtの書き込みたい行と列を指定し、いただいた式を使って代入する
3.Excelに書き戻す。

・Excelに書き戻す。際はセル書き込みだと思うのですが、そこで書き込みするセルを指定する必要があります。
この指定をせずに、2月+A商品の該当するセルを突き止めて、そこにあたいをかくにはどのようにしたらよいのでしょうか。
実績表は共同で利用する場所に格納されており、dt のデータごと実績表に戻すことができません。

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

こんにちは

セルを特定するのが面倒なので、表全体を範囲を書き込みで書き込めば良いかと思います。

1 Like

Yoichiさん
Replyさっそくありがとうございます!

表全体を範囲を書き込みで書き込む

処理はこのような感じであっていますか?
範囲を読み込み
シート名-実績表 範囲-C4:P20
出力-dt

複数代入
①dt.Rows(1)(“2月”)=金額
②dt.Rows(2)(“2月”)=金額
③dt.Rows(3)(“2月”)=金額

範囲に書き込み
シート名-実績表 範囲-C4:P20
dt

読み込んだExcelデータをdtに入れてそのデータを同じ範囲のExcelに書き込む
というイメージですが、Yoichiさんのアドバイス通りになっていますか?
image

こんにちは

やってみた方が早いと思いますが....

シート名-実績表 範囲-C4:P20

範囲書き込みの場合、書き込み先の指定は範囲ではなく、開始アドレスかと思いますので
ヘッダー付きで書き込む場合は、“C4”
ヘッダーなしで書き込む場合は、“C5”
になるかと思います。

1 Like

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.