2015年5月26日火曜日

エクセルファイルの共有解除を行うExcel VBA

エクセルファイルの共有解除を行うExcel VBAをご紹介します。

エクセルファイルの共有解除を行うExcel VBAサンプルコード
現在開いているエクセルファイルの共有を解除する。
 ActiveWorkbook.ExclusiveAccess
ファイルを指定したい場合は、下記のように直接指定すればOK。
 workbooks([ファイル名]).ExclusiveAccess

共有のエクセルファイルでできないこと
  • シートの削除
  • アドバンスドフィルタ(フィルタの詳細設定)
  • 図形やグラフの追加
  • ハイパーリンクの追加
  • ピポットテーブルの挿入
  • その他もろもろ
個人的には、アドバンスドフィルタが使用できないのが痛い。通常のフィルタでは動作が遅いので、あえてアドバンスドフィルタを使用したい場面が多々あるからです。

そういう時には、下記のような対応を行うことが多いです。
  • 一時的に共有を外して操作する。処理が終わったら共有を付け直す or 保存せずに閉じる
  • ファイルをコピーし、共有を外す。処理が終わったらコピーしたファイルは削除する

この記事はお役に立てたでしょうか?
もし参考になると思っていただけたら、こちらのボタンから共有をお願いします。

このエントリーをはてなブックマークに追加