• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:どちらでしょうか?)

エクセルVBAで自身のファイルを読み取り専用モードにする方法

このQ&Aのポイント
  • エクセルVBAを使用して、自身のファイルを読み取り専用モードにする方法について説明します。
  • 特定のコードを使用することで、既に開いているエクセルファイルを読み取り専用モードにすることができます。
  • 一方、同じコードを実行しても、新規にエクセルファイルを開く場合には「ファイル名は既に開いています」というメッセージが表示されます。これは、既に開いているファイルを再度開くと、変更内容が破棄されるためです。

質問者が選んだベストアンサー

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

こんばんは。 そのマクロではあくまでも一回自分を閉じてから、改めて読み取り専用で開き直そうとします。 前回保存してから、何かブックに編集を加えていると、後者のメッセージが現れます。 #参考 「既に開いている自身のファイルを読み取り専用モードにする」には、次のマクロにします sub macro2() activeworkbook.save  ’←状況による activeworkbook.changefileaccess mode:=xlreadonly end sub

huiu78iou
質問者

お礼

保存してる場合は、そのファイルを読み取り専用モードにして、 保存してない場合は、同じファイルを新規に開いて 読み取り専用モードにするという事ですね。

関連するQ&A

専門家に質問してみよう