VBAから実行されるSaveAsを制御したいと思っています。
マクロ自体の禁止ではなく、特定のマクロの実行を禁止したいです。
そこで、VBも背後ではネイティブAPIが走っているのだろうから何かしら
フックする手段があるのではないかと調べようと思うのですが、まずはじめ
にどこからつついていけばよいのか考えあぐねています。
インタープリタなので一文一文解釈しているようなAPIとかあるのでしょう
か…
もしお詳しい方がいらっしゃればご教授頂ければ幸いです。
質問内容が漠然としていて申し訳ありません…
よろしくお願いします。
SaveAsをフックできたとして、その実行を制御できちゃったらVBAのSaveAs
だけでなく、そのアプリケーションの「名前を付けて保存」までできなく
なっちゃいません?
SaveAsなんかはWindowsAPIなんか使ってないと思うけどフックなんかでき
るのかな?ネイティブAPIが何を指しているか知らないけど。
そもそもなんで
> VBAから実行されるSaveAsを制御したいと思っています。
なんて思っているのかよくわからない。
VBAで動作しているプログラムがあるけど、その中のSaveAsを実行する部分
を動作させたくないから?そうだったっらそのプログラムを修正するのが
筋でしょう。
こんにちは。
お望みの回答は存在します。
APIフックの様なイメージで、想像されているのでしょうかね。
こちらで質問されてはどうでしょうか。
http://moug.net/faq/viewforum.php?f=2
# 移られるならマルチポストにならない様に、こちらは閉じて行ってください。
名前は気にしないでください。
> maruさん
お返事有難うございます。
別名保存禁止がずばりやりたいことです。
Windowsの内部構造がC言語である以上、VBないしはVBAもカーネルAPIでも
何でも構わないので何かしらのWindows API上で動作していると考えており
ました。
> 熊谷隆史さん
お返事有難うございます。
まさにそういうイメージです。
単純なイベントシンクではPowerPoint2000でイベントが公開されていない
というのがネックです。
(PowerPointのイベント自体他に比べ非常に少ない。)
ご紹介頂いた掲示板にてご質問をさせて頂きたいと思います。
こちらは解決済みとさせて頂きます。
ありがとうございました。
チェックを忘れました。
ツイート | ![]() |