UiPathTeam.Excel.Activitiesのワークブックの保存について

お世話になります。

表題の件につきまして、以下のエラーが発生します。

ワークブックに名前をつけて保存: ~~~~~~~~~~(ファイル名)
にアクセスできません。次のいずれかの理由が考えられます。
image

というエラーです。
エラーが起きた際に出力されているファイル名がそもそもおかしいようです。
「保存のファイルパス」プロパティはプロジェクトフォルダからの相対パスを指定していましたが
絶対パスにすると期待した動作をしました。

どなたかご存知の方いらっしゃればご教示お願いします。

なんのアクティビティをお使いですか?

ご回答ありがとうございます。

記載あいまいで申し訳ないです。
「ワークブックに名前をつけて保存」アクティビティです。

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

標準アクティビティにありません。

プロジェクトを管理で追加していますか?

これまた記載があいまいでしたね。。

表題には記載あるのですが、UiPathTeam.Excel.Activitiesのアクティビティです。

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

こんにちは

アクティビティパッケージ内で相対パスの起点としているパスが、プロジェクトフォルダと異なることが原因かと思います。(手元の環境ではMy Documentが起点となっていました)

System.IO.Path.Combine(System.Environment.CurrentDirectory,"xxxx.xlsx")

とすれば、プロジェクトフォルダ起点と一致すると思います。

1 Like

ご回答頂きありがとうございます。

無事、期待する動作をすることができました!
1点気になるのですが、これは現在の作業フォルダを取得するということで正しいですか?
パブリッシュした後も動的にパスが変わる認識で正しいですか?

こんにちは

1点気になるのですが、これは現在の作業フォルダを取得するということで正しいですか?

そうです。相対パスは基本的には現在の作業フォルダが起点となります。

パブリッシュした後も動的にパスが変わる認識で正しいですか?

パブリッシュして実行した際は、パッケージの展開先が起点となりますので、動的には変わりますが、データを書き込む場所としてはあまりお勧めできません。(パブリッシュ時実行での相対パス利用自体がトラブルになりやすいです。)

例えば、System.Environment.SpecialFolder.MyDocuments等を使ってログインユーザーに応じた絶対パスを生成する方がベターかと思います。

2 Likes

詳細までありがとうございます。

なるほど、、各ユーザのフォルダに吐くということですね。
この方法で実装しようと思います!
ありがとうございました。

2 Likes

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