ローカルPCでは動いていたブックをOneDriveや共有フォルダーへ移すと、「パスが見つからない」「読み取り専用」「保存できない」「別の人が編集中」といった問題が出ることがあります。
VBAが固定パスや個人のドライブ文字を使っていないか、同期中のファイルへ上書きしていないか、共同編集と処理が競合していないかを確認します。
既存VBAが保存場所・ファイルロック・同期・権限へ依存している場合、移動後に修正が必要です。原本の場所、実行者、同時編集、保存先を決め、個人固有の絶対パスを減らします。Web版ではVBAを実行できない点にも注意します。
移動後に変わる条件
ファイル自体が同じでも、周辺条件が変わります。
- ローカル絶対パスと同期フォルダーの差
- 利用者ごとのユーザーフォルダー名
- ファイルURLとローカルパス
- 同時編集とファイルロック
- 同期完了前の読込み・保存
- 閲覧・編集・削除の権限
どのファイルを誰がいつ更新するかを決める
入力用ブック、処理用一時ファイル、出力先を分けます。複数人が入力する原本へ、マクロが長時間の書込みを行わないようにします。
同じファイルを直接上書きせず、一時保存後に置換する方法や、処理中フラグを持たせる方法があります。ただし同期サービスの挙動を実環境で試す必要があります。
- 1旧新の保存場所を比較する
実際のローカルパス、URL、権限、同期状態を記録します。
- 2固定パスとロック処理を探す
VBA、外部リンク、クエリ、保存先設定を確認します。
- 3複数人・複数PCで再試験する
同時編集、同期遅延、切断、権限不足を含めて確認します。
VBAを残すか、クラウド向けへ分けるか
印刷やローカルファイル操作が必要ならVBAを残す理由があります。共同編集や定時クラウド処理を優先するなら、Office Scripts・Power Automateへ移せる部分を分けます。
| 方法 | 向いている場面 | 確認したい点 |
|---|---|---|
| VBAを修正 | デスクトップ版とローカル処理を継続 | 固定パス・ロック・同期を見直す |
| Office Scripts | Web版Excel中心へ移行 | VBAと同じ機能があるとは限らない |
| Power Automate | 保存・通知・承認をクラウド化 | 接続アカウントと競合を管理 |
売上と入金の突合で確認しておきたいこと
まず一人だけで新しい場所から開き、読込み・保存・再開を試してから利用者を増やします。
- 旧ファイルを残したままコピーで試す
- 利用者ごとのパスを記録する
- Web版で開いているか確認する
- 同期アイコンと版履歴を確認する
発注点の管理を相談するときに伝えること
旧保存場所と新保存場所の両方、問題が出るPC、正常なPCを比較します。
- 問題ブックと旧版
- 旧新の保存場所・ローカルパス
- 利用者と権限
- 同時編集・同期・保存の問題が出る手順
- 正しい出力ファイルと保存先
発注点の管理をプロに任せる目安
- 複数人で同時利用する
- 固定パスが多数のコードに埋め込まれている
- 保存競合やデータ消失が起きている
- VBAとクラウド処理を役割分担したい
発注点の管理で確認しておきたいこと
同期フォルダーを通常のローカルフォルダーと同じ前提で扱うと、タイミング依存の不具合が残ります。
- 個人のユーザーフォルダー名をコードへ固定する
- Web版でVBAが動く前提にする
- 同期中に同じ出力ファイルを上書きする
- 共同編集者がいる状態で一括更新する
発注点の管理で確認しておきたいこと
同期が終わるまで待てば直りますか?
一時的な競合なら改善しますが、固定パスやWeb版非対応など別の原因も確認します。
共有フォルダーなら同時編集できますか?
保存方式やExcelの種類によります。OneDrive・SharePointの共同編集とは挙動が異なる場合があります。
VBAをOffice Scriptsへそのまま変換できますか?
言語と実行環境が異なるため、同じ業務要件を基に作り直す必要があります。