Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


43135 / 76732 ←次へ | 前へ→

【38653】Re:Excelファイルを誰かが開いているとき...
発言  漂流民  - 06/6/7(水) 23:47 -

引用なし
パスワード
   ▼Ned さん:
こんばんわ

私も気になって拝見していたのですが、感動しました。

私の知る限り、エクセル起動時VBAで取得できるイベントの発生順は
Workbook_Open → Workbook_Activate → Workbook_WindowActivate → auto_open
なのでWorkbook_Openイベント以前に発生しているものは制御しようがない。
しかもマクロを無効にされたらお手上げ、と思っていたのですが、
確かにファイル属性が「読取専用」になっていれば、
>これだと、最初に『〜は編集の為ロックされています。使用者は〜です。』と、
このメッセージは出ません。
使用中のファイルは属性を「読取専用」にすることで回避するという
まさに「コロンブスの卵」的発想に驚きました。
(そもそも使用中にファイルの属性を変えられる事も知りませんでした)

この手法を使えば
・作業シートをxlSheetVeryHiddenにして「読取専用」時は何もさせない
・指定した絶対パス上にファイルがなければ使用できない
・使用できるユーザーを制限する
などいろいろ応用範囲も広そうです。

勉強になりました。


>ただ、OPEN中ファイルの属性変更に少し不安があるので、別案として
>最初に開いた時に元ファイルを別名保存してテンポラリーファイル的な使い方をする。
>その時元ファイルは読み取り専用に属性変更をする。
>とすれば保存の度に属性変更する必要はなく、OpenとCloseの時だけ処理をすればいいですね^ ^
これはOSやエクセルがおちた時、話がややこしくなるような気がするのですが?

1 hits

【38514】Excelファイルを誰かが開いているときは開けないようにする件。 kouka 06/6/5(月) 16:12 質問
【38518】Re:Excelファイルを誰かが開いているときは... Kein 06/6/5(月) 17:12 回答
【38534】Re:Excelファイルを誰かが開いているときは... kouka 06/6/6(火) 9:19 発言
【38585】Re:Excelファイルを誰かが開いているときは... kouka 06/6/6(火) 18:27 発言
【38597】Re:Excelファイルを誰かが開いているとき... Ned 06/6/7(水) 0:09 発言
【38598】Re:Excelファイルを誰かが開いているとき... Ned 06/6/7(水) 0:41 発言
【38610】Re:Excelファイルを誰かが開いているとき... Ned 06/6/7(水) 10:50 発言
【38653】Re:Excelファイルを誰かが開いているとき... 漂流民 06/6/7(水) 23:47 発言
【38671】Re:Excelファイルを誰かが開いているとき... Ned 06/6/8(木) 11:09 発言
【38662】Re:Excelファイルを誰かが開いているとき... kouka 06/6/8(木) 9:44 質問
【38665】Re:Excelファイルを誰かが開いているとき... Ned 06/6/8(木) 10:08 発言
【38685】Re:Excelファイルを誰かが開いているとき... Ned 06/6/8(木) 14:52 発言
【38740】Re:Excelファイルを誰かが開いているとき... kouka 06/6/9(金) 11:03 お礼

43135 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free