集計でエラー

こんばんは。いつもお世話になっております。
以前こちらで教えていただいた方法で、下の画像のように集計するロボットを再度作成しようと思ったのですが、「dt_○○に割り当てられません」とエラーが出てしまいました。
どこを修正すればいいのかご教示お願いいたします。

dt_○○=dt_○○.AsEnumerable.GroupBy(Function(r) r(“くだもの”).ToString).Select(Function(g) dt_○○.Clone.LoadDataRow({g.Key,g.Sum(Function(r) Int32.Parse(r(“個数”).ToString))},False)).CopyToDataTable()

Hi @m-t

Below is the correct one-line LINQ expression to use in an Assign activity in UiPath:

dt_Result = (From r In dt_Input.AsEnumerable() Group r By k = r(“くだもの”).ToString() Into g = Group Select dt_Result.LoadDataRow({k, g.Sum(Function(x) CInt(x(“個数”)))}, False)).CopyToDataTable()

Cheers

こんにちは

手元の環境ですと上記の式で問題なく動作しますね。まずは読み込み時に不要な行が含まれていないか(あればデータテーブルをフィルターアクティビティ等でフィルターする)、あるいはエラーが出ているスクリーンショット共有いただくかあたりでしょうか?

Sample
Sample20260109-3.zip (10.6 KB)

ご教示いただき、ありがとうございます。
やはり同じエラーが出てしまいます。

いつもありがとうございます。
エラー画像を共有いたします。
お忙しい中恐れ入りますが、よろしくお願いいたします。

こんにちは

通常の代入アクティビティ(複数代入ではなく)に上記式を新たに入れなおしてもエラーが再現しますでしょうか?

Okay So first, create and initialize the result DataTable before the Assign in a separate Assign or Build Data Table

dt_Result = dt_Input.Clone() in assign activity

then use the below one-liner linq

dt_Result = (From r In dt_Input.AsEnumerable() Group r By k = r(“くだもの”).ToString() Into g = Group Select dt_Result.LoadDataRow({k, g.Sum(Function(x) CInt(x(“個数”)))}, False)).CopyToDataTable()

If the error still appears, the most stable alternative is to avoid LoadDataRow inside LINQ entirely and project to an anonymous object first

dt_Result = (From r In dt_Input.AsEnumerable() Group r By k = r(“くだもの”).ToString() Into g = Group Select New Object() {k, g.Sum(Function(x) CInt(x(“個数”)))}).CopyToDataTable()

Cheers

こんにちは。返信が遅くなり、申し訳ありませんでした。
代入が見つからなくて、複数代入を使用していたのですが、名前が「変数の値を設定」に変わっていたのですね。
変数の値を設定を使用してもエラーが出てしまったので、新しいプロジェクトを使って、この部分のみを再度作成してみたら、エラーが出ることなくすんなりできました。
何が悪かったのかよくわかりませんが、新しいプロジェクトで全て作り直します。

いつもアドバイスを頂き、ありがとうございます。

返信が遅くなり、申し訳ありませんでした。
新しいプロジェクトで作り直したら、最初の計算式で問題なく動きました。
いろいろアドバイスを頂き、ありがとうございました。

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