範囲に書き込みをしようとするとエラーになる

いつもお世話になっております。

ワークブック系の「範囲に書き込み」で書き込みをしようとしております。
エラーメッセージ
『範囲に書き込み (ワークブック): Object reference not set to an instance of an object.』
となります。
Excelアプリケーションスコープを使っても同じ結果でした。
ローカルパネルの中身を確認しましたが、書き込み対象の変数の中身はありました。
どこの設定が間違っているのか教えて頂きたくよろしくお願い致します。

こんにちは

まずは原因の切り分けのために、別のファイル(例えば新規のtest.xlsx)に書き出してみて
どのようになるかを確認してみてはと思います。

1 Like

HI @miwa_yamamoto

Have you received the data from the Data Table can you check out this?

Before Write range activity use this expression in the message box for cross check

DataTablename.Rows.Count

Here DataTablename is the Dt name

Regards
Gokul

1 Like

@miwa_yamamoto

お疲れ様です。
『範囲に書き込み (ワークブック): Object reference not set to an instance of an object.』このエラーの意味はおそらく書き込みたい変数は初期化されてません。

書き込みたい変数の写真もらっていいですか?

1 Like

いつもありがとうございます。

別ファイルへ書き込みをすると、書き込みができました。

こんにちは

となりますと、書き込み先のファイルが問題かもしれませんね
Excelファイルを使うの範囲書き込み(WriteRangeX)の結果はいかがでしょうか?

ありがとうございます。
本来のファイルへアプリケーションスコープを使い、書き出した場合の結果でしょうか。

こちらの方の範囲書き込みです。

HI @miwa_yamamoto

Can you try with Workbook Write Range activity?

Regards
Gokul

ありがとうございます。
このようなエラーに変わりました。

image

こんにちは

このファイル自体が少々おかしいかもしれません。EXCELでこのファイルを手動で開くことは可能でしょうか?
あるいは不要なexcelのプロセスがある場合は、タスクマネージャーなどで削除しておいた方が
良いかもしれません。

1 Like

ありがとうございます。
Excelファイルを手動で開くことは可能ですが、開く際に以下のメッセージが出現します。

タスクマネージャーを確認しましたがExcelは残っていませんでした。

こんにちは

このオプションを解除して、試してみること可能でしょうか?以下になると思います。

1 Like

ありがとうございます。
チェックを外すとExcelへ書き込みが出来ました。

ワークブック-範囲書き込みの方も動作しそうでしょうか?

このファイルのこの設定をあらかじめ、変更しておくことおは可能そうでしょうか?
難しければ、UI操作でこのチェックを外しにいく等が考えられますが...

1 Like

ありがとうございます。

ワークブックで行ってもエラーとなりました。
チェックは外すことが出来ないので、UiPath側で何か行いたいです。

少々面倒ですが、以下ためしてみてください。

ExcelProcessScopeでDisplyAlertをTrueにしてください。
これにより読み取り専用確認のダイアログが出現します。

並列アクティビティを用意し、右側にエクセルの一連のアクティビティを配置します。
左側にワークフロー呼び出しアクティビティを配置し、分離のプロパティをonにします。
呼び出し先のワークフローは、読み取り専用確認のダイアログの「いいえ」ボタンを押すクリック
を配置します。

これで範囲書き込みで書き込めると思います。

いつもありがとうございます。

こちらの部分なのですが、教えて頂きたくよろしくお願い致します。
別で1つクリックするプログラムを作成するということでしょうか。

例えば以下の様に clickButton.xaml として別のワークフローファイルを作ります。

image

ありがとうございます。
このように作成致しました。

デバックで行ったところ、以下のエラーとなりました。
Excel ファイルを使用: COM object that has been separated from its underlying RCW cannot be used.