nagumo
(asahi)
June 24, 2021, 7:11am
1
Uipath初心者です。
添付のエクセルの①~⑥のセルに順番に『セルに書き込み』で入力させたいです。
添付のJPEGのように該当シートのB:Bをデータテーブルにして、『データテーブルをフィルター』で0 is emptyは削除でフィルターをかけました。
そしてidxという変数にそのデータテーブルの空白じゃない行が何行目か代入して、『セルに書き込み』の際に、①だったらシート名を『第二面』、セルを『“B”&idx+2』に、④だったらシート名を『第二面』、セルを『“H”&idx+3』にして書き込ませようとしています。
が、セルを結合しているせいか、『データテーブルをフィルター』でエラーが出て、「引数’列インデックス’の値が設定されていないかまたは無効です」と表示されてしまいます。
どのようにしたら上から順番に空白の行に書き込めますでしょうか?
Book1.xlsx (57.4 KB)
よろしくお願いいたします。
Yoichi
(Yoichi)
June 24, 2021, 7:35am
2
こんにちは
データテーブルをフィルターアクティビティのWizardでの設定内容を共有できますでしょうか?
エラーメッセージからは列の設定をしていないように読み取れます。
nagumo
(asahi)
June 24, 2021, 7:48am
4
ちなみに出力列は何も設定していないです。
よろしくお願いいたします。
Yoichi
(Yoichi)
June 24, 2021, 8:18am
5
こんにちは
手元の環境で試してみましたが、例外が再現しませんでした。
フィルターウィザードの列の部分は正しく半角の 0 になっていますでしょうか?
例外発生時のrows_countの中身をローカルパネルで確認できると思いますが、その内容は想定通りでしょうか?
nagumo
(asahi)
June 24, 2021, 8:26am
6
データテーブルの範囲を『A:B』にして、『データテーブルをフィルター』で『1 isEmpty(B列が空白)』を削除にしたらエラーは出なくなりました。
ただ、最後まで動くんですが結局①~⑥のセルには何も書き込まれないです。
実行証跡には緑のチェックがついています。
また、idxを1行書き込みで見ましたが、想定している行(①なら9行目)にはなっていないです。
rows_countの中身とはどういうことでしょうか?
nagumo
(asahi)
June 24, 2021, 8:33am
7
私の推測なんですが、たしかセルを結合すると1番左上のセルにしか入力されていないことになってるはずなので、エクセルの1~5行目のセルが結合されているために、B列は0行目から空白とRows.Countが判断するんじゃないでしょうか・・?
※ちなみにidxの1行書き込みは0、1、2、と表示されました。
繰り返しの中に入れていて、書き込む内容は変数にしているので、とりあえず3行分のデータを使用して動かしてみました。
Yoichi
(Yoichi)
June 24, 2021, 9:03am
8
こんにちは
上記の画像だけですと、全体のロジックが把握できませんので、可能でしたらワークフローを添付いただけると良いかもしれません。
nagumo
(asahi)
June 24, 2021, 9:29am
9
何度もご回答いただきありがとうございました!
やはり結合されたセルには左上以外のセルが空白という扱いになっていたので、結合された全てのセルに同じ文字列が入るよう数式でコピペしましたら、Rows.Countでちゃんと列を数えることが出来ました!
結合されたセルがある列をフィルターかける際にやる手法です。
ここに書き込んだおかげで頭が整理できて解決できました!
ありがとうございました!!
1 Like