- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:どちらでしょうか?)
エクセルVBAで自身のファイルを読み取り専用モードにする方法
このQ&Aのポイント
- エクセルVBAを使用して、自身のファイルを読み取り専用モードにする方法について説明します。
- 特定のコードを使用することで、既に開いているエクセルファイルを読み取り専用モードにすることができます。
- 一方、同じコードを実行しても、新規にエクセルファイルを開く場合には「ファイル名は既に開いています」というメッセージが表示されます。これは、既に開いているファイルを再度開くと、変更内容が破棄されるためです。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
こんばんは。 そのマクロではあくまでも一回自分を閉じてから、改めて読み取り専用で開き直そうとします。 前回保存してから、何かブックに編集を加えていると、後者のメッセージが現れます。 #参考 「既に開いている自身のファイルを読み取り専用モードにする」には、次のマクロにします sub macro2() activeworkbook.save ’←状況による activeworkbook.changefileaccess mode:=xlreadonly end sub
お礼
保存してる場合は、そのファイルを読み取り専用モードにして、 保存してない場合は、同じファイルを新規に開いて 読み取り専用モードにするという事ですね。