サイトアイコン JobAutoマニュアル

JobAutoでExcelファイルが開いているか確認する方法

★質問・概要

Q.JobAutoでExcelファイルを操作する前に、そのファイルがほかの人や別のExcelで開かれていないか確認する方法はありますか?

★回答

Excelが作成する「~$」で始まる一時ファイル(所有者ファイル)の有無を、JobAutoの「ファイル存在チェック」アクションで調べる方法があります。Excelで保存済みのブックを開くと、通常、同じフォルダに「~$」で始まる一時ファイルが作成されます。

ただし、「~$」ファイルの有無だけでは、Excelが現在開かれていることや編集可能なことを確実に判定できません。あくまで簡易的な確認方法として利用し、重要な更新処理では実際のファイル操作結果も確認してください。

1.Excelを開いたときに作成される一時ファイルとは

例えば、次のExcelファイルを開く場合を考えます。

C:\Data\売上管理.xlsx

保存済みのブックをExcelで開くと、同じフォルダに次のような一時ファイルが作成されることがあります。

C:\Data\~$売上管理.xlsx

一時ファイルは通常、ブックを正常に閉じると削除されます。ただし、Officeの種類や環境によって一時ファイル名の付け方が異なる場合があります。上記の名前は一例です。対象のExcelファイルを実際に開き、同じフォルダに生成されるファイル名を確認してから設定してください。

2.JobAutoの「ファイル存在チェック」で確認する

一時ファイルが存在するかどうかを確認するには、JobAutoのファイル操作にある「ファイル存在チェック」アクションを使用します。

  1. 対象のExcelファイルを開き、同じフォルダに作成される「~$」で始まる一時ファイル名を確認します。
  2. JobAutoのロボットに「ファイル存在チェック」アクションを追加します。
  3. 基本設定の「ファイル」に、確認対象の一時ファイルのフルパスを設定します。
  4. 「ファイルが存在する場合」に、Excelの使用状況を再確認する処理や、いったん処理を見合わせる設定を行います。
  5. 「ファイルが存在しない場合」に、次の確認処理へ進む設定を行います。
  6. Excelを開いた状態と閉じた状態の両方でテストし、分岐が想定どおりに動くか確認します。

「ファイルが存在する場合」「ファイルが存在しない場合」では、それぞれのチェックと「処理」の設定を使って後続の動作を分岐できます。詳しい設定項目は、JobAutoでファイルの存在を確認する方法をご確認ください。

3.一時ファイルの有無による判定例

一時ファイルの状態考えられる状況ロボット側の対応例
「~$」ファイルが存在するExcelでブックを開いている可能性がある。異常終了後に残存している場合もある。処理を見合わせ、Excelの実際の状態を確認する。
「~$」ファイルが存在しないブックが閉じられている可能性がある。ただし編集可能である保証はない。必要なファイル操作を実行し、エラーの有無も確認する。

特に更新・上書き保存を行うロボットでは、ほかの人がファイルを編集している可能性があるときに無条件で処理を続けないようにしてください。判断できない場合は実行を見合わせ、利用状況を確認する運用が安全です。

4.「~$」ファイルがあってもExcelを開いているとは限らない

Excelが異常終了した場合や、ネットワーク共有フォルダとの接続に問題が生じた場合、一時ファイルが残ることがあります。この場合、実際には誰もブックを開いていなくても「~$」ファイルが見つかる可能性があります。

ロボットから「~$」ファイルを自動削除して、強制的に使用中の判定を解除する方法は推奨しません。実際にほかの人が編集中であれば、保存時の競合やデータ損失につながるおそれがあります。残存ファイルの削除を検討する場合も、まず対象ブックを開いている利用者やプロセスがないことを確認してください。

5.OneDrive・SharePointのExcelファイルの場合

OneDriveやSharePointに保存したExcelでは、Microsoft 365の共同編集や同期機能が使用されることがあります。その場合、ローカルフォルダにある「~$」ファイルの有無だけでは、ほかのユーザーによる編集状況やロック状態を正確に判断できません。

共同編集の仕組みを利用しているファイルについては、保存場所や組織の運用ルールに合う方法で使用状況を確認してください。なお、ローカルファイルや共有フォルダに保存されたExcelであっても、「~$」ファイルだけで確実な排他制御ができるわけではありません。

6.判定がうまくいかない場合の確認事項

ロボットが重要なファイルを更新する場合は、ファイルの存在確認に加えて保存結果・エラー内容を検証し、必要に応じて処理の再試行や利用者への確認を組み込んでください。


関連するマニュアル・FAQ

JobAutoのFAQ記事一覧へ戻る

モバイルバージョンを終了