エクセル等のファイル名が変わってもパスを変えずに処理したい

UiPathの「Excel application scope」で指定のExcelをパスに設定する場合、
通常、ファイル名を設定するかと思います。
例)“User\Desktop\ファイル名.xlsx”

処理するファイル名称が日付により変動するのですが、
更新日=ファイル名の日付のような形となります。
例)ファイル名_20180910.xlsx

上記の更新日付:2018/09/10 15:44

ファイル更新日付を取得し、それを置き換えたファイル名をパスに指定することで、
yyyymmddが変わった場合のみであれば動くようにしたいのですが、可能でしょうか。

不足情報や不明点、何かお考え等ございましたら何でも構いませんのでお教え願います。
宜しくお願い致します。

1 Like

ご質問の意味ですが、
ファイル名のyyyymmddと
ファイルの更新日時のyyyymmddが
不一致の時に、何かの処理が動くようにする、という意味でしょうか?

ファイルの更新日時は、
yyyymmdd = System.IO.File.GetLastWriteTime(“path to file”).tostring(“yyyyMMdd”)
で取得できます。

ファイル名のyyyymmddは、
filename = System.IO.Path.GetFileNameWithoutExtension(“path to file”).toString
yyyymmdd = filename.mid(yyyymmdd.Length-8, 8)

で取得できます。

1 Like

kaishii様

早急のご回答、ありがとうございます。
書き方が不十分で混乱させてしまい申し訳ございません。

「ファイル名_20180910.xlsx」というExcelをを開きたいのですが、
パスに「ファイル名_20180910.xlsx」と指定した場合、
名前が変わってしまう(ファイル名_20180910.xlsx ⇒ ファイル名_20190101.xlsx )と
エラーとなってしまうと思っています。
名前が変わるといっても想定では日付(yyyyMMdd)の箇所だけなので、
ファイル名の日付かファイル更新の日付を取得して変数(変数名:update)に格納し、
パスに「ファイル名_ + update」のような形にすれば、
ファイル名が変わる毎にフローを編集しなくても済むのでは、と考えました。

うまく伝えられずすみません。
取り急ぎ頂いたヒントにて対象のファイルの更新日時取得はできました。
ありがとうございます。