• ベストアンサー

エクセル:保存するときに、標準モジュールに書かれたマクロの実行

よろしくお願いします。 エクセルのVBAについての質問です。 ◆(上書き)保存をするだけ(ツールバーのフロッピーマークを押すだけ)で、『自動的に標準モジュールに書かれたある特定のマクロを必ず実行してから保存する』という方法はありますか?あれば教えてください。 ◆私が作った簡易システムをエクセル初心者の入力担当者のために上記のことを考えています。たとえば、「保存終了させる前に必ずこのボタンを押してこのマクロを実行してね」と説明してもうっかり忘れることが多いという方のための方策を考えてのお願いです。 以上、よろしくお願いいたします。

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

  • ベストアンサー
noname#123709
noname#123709
回答No.1

ThisWorkbookのモジュールに以下でよろしいのではないかと・・・。 Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) Call (実行したいプロシージャ) End Sub

yastaro
質問者

お礼

SuperMildさん、ありがとうございました。 できました。さっそくのご回答、心より感謝いたします。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 標準モジュールにコピーして、実行・・・??

    エクセルVBA初心者です。 VBAを勉強すべく関連サイトを見て勉強しようと思ったのですが、 早くもつまづいてしまいました。 コードの例で、 『下記を標準モジュールにコピーして、実行してみてください。』 とあるのですが、 新しいエクセルブックを開いて標準モジュールに、ここでいう "下記"部分をコピペしたところまでは良かったのですが、その先の "実行"の仕方が分かりません。 初心者な質問でお恥ずかしいのですが、どなたか教えてください。 お願いします。

  • シートモジュールのマクロを標準モジュールに移したいのですが・・

    マクロを標準モジュールでなく、うっかりsheet2に作成しました。 作動は問題なかったのですが、sheet2を差し替える事になったので、 マクロを標準モジュールにコピーしたいのですが、標準モジュールではうまく作動しません。 なにが原因で解決するにはどうすれば良いのか全くわかりません。 マクロ初心者でネットを参考にしながら作成したので詳しい事は分かりませんが、よろしくお願いします。

  • エクセルVBAで標準モジュールを保護したい

    エクセルのVBAマクロを使用したエクセルフィルがあります。 ユーザーは標準モジュールに記述した関数を使ってシートのマクロを変更してカストマイズできます。 ユーザーが標準モジュールを変更すると使用できなくなりますので、この標準モジュールだけをユーザーが変更できない、または見えないようにする方法をご教示いただけませんか。 よろしくお願いします。

  • VBA 保存と実行について

    エクセルの「開発」タブのBVAで 標準モジュールでプログラムを書きました。 (正確に言うと、書く能力はないので、 HPを参考にまねをしただけ) 作成した、そのマクロに名前をつける必要も あるかもしれませんが、保存の仕方が分かりません。 最初に作成したものに上書きされてしまっていて (モジュール1と2を作成したのに、1に2の内容が 上書きされていた)、最初につくったものが消えている 状態でした。 エクセルのブック全体に、そのマクロ?を実行したいのですが その実行の方法も分かりません。今のところワークシート4 に表を作成しており、マクロで表の加工をしたいと思っているのですがその場合は、ワークシート4を開いて実行?みたいなのを したらいいのでしょうか。初心者です。教えていただければ幸いです。

  • エクセル:シート1のセルA1が0でなければ任意のマクロを実行したい

    エクセルマクロ(VBA)初心者です。よろしくお願いします。 (1)エクセルのsheet1のセルA1の値が”0(ゼロ)”でなければ、そのシート上で任意のマクロを実行し、ゼロであれば実行せずにsheet2へとぶ (2)同じようにsheet2のセルA1がゼロでなければ実効し、ゼロでなければsheet3へとぶ・・・の繰り返し(sheet50まであります。) このようなマクロ(標準モジュール)の書き方を教えてください。 よろしくお願いいたします。

  • 標準モジュールが1から3までありますが?

    エクセルVBEの画面を開くと、標準モジュールの下にモジュールが1から3まであります。 使い分けのルールのようなものはあるのですか? マクロの自動記録をしたらモジュール3に記述されていたのですが、通常、 自分で標準モジュールをを記述するときはモジュール1に記述するものですか?

  • 同じマクロ名でも、違うモジュールならエラーにならな

    同じマクロ名でも、違うモジュールならエラーにならない? エクセルVBAについてご教授ください。 標準モジュールに ――――――――― Option Explicit Sub CommandButton1_Click() MsgBox "" End Sub Sub CommandButton1_Click() MsgBox "" End Sub ――――――――― と同じマクロ名を2つ作ったら、コンパイルエラーになりますが、 上記のコードは一度消して、フォームモジュールに ――――――――― Private Sub CommandButton1_Click() MsgBox "" End Sub ――――――――― を一つ作り、 標準モジュールに ――――――――― Sub CommandButton1_Click() MsgBox "" End Sub ――――――――― を一つ作った場合は、エラーにならずにマクロを実行できました。 これは、フォームモジュールがPrivate Subだからでしょうか? フォームモジュールに1つ、 標準モジュールに1つ なら同じマクロ名を使っても、エラーにならないという事でしょうか? よろしくお願いします。

  • エクセルVBA:標準モジュールに書いたコードを順次検証する方法

    よろしくお願いします。 何かの本で見かけたのですが、調べてもわからないので教えてください。 エクセルVBAで、標準モジュールに書いたコードを上から順番に、どこかで区切って実行し、実行結果とコード内容を検証しつつ、順次、その検証を進めていく方法を知りたいのです。お願いいたします。

  • Excel一定時間ごとに上書保存するマクロ

    エクセルで、一定時間ごと(例えば5分に一回)に上書き保存を行うマクロを組みたいとおもっております。 エクセルの1セルに、上書き保存を行うと、最終保存時間を表示できるように設定しているのですが、 自動バックアップ等でなく、一定間隔で自動で「上書き保存」を行えるマクロを組みたいと思っています。 使い方としては、該当のエクセルをスタートアップにいれ、自動起動させる。⇒エクセルが開いたら自動でマクロ起動 ⇒ 自動で上書き保存マクロが実行され、最終保存日時が更新される。という流れとしたいです。 どなたか、お教え願えませんでしょうか。 よろしくお願い致します。

  • エクセルでインポートした標準モジュールが動かないのです。

    エクセル97VBA対応のVB6で作成されたプログラムを書いてある通りに、VBEでインポートしました。 しかし、標準モジュールには表示されているのですが関数の中には表示されないのです。 ユーザー定義関数では無くて別の方法で動かすものなのでしょうか? (Calc_Kyureki "2002","5","26"と入力しても名前が間違っていますと出てしまいます) それともエクセル2003では、エクセル97のVBAを動かすには何か別のインポートの仕方があるのでしょうか? 以下のベクターのソフトです。 旧暦 for VB Visual BasicまたはExcel VBAで旧暦を計算する標準モジュール(ソース付き) http://www.vector.co.jp/soft/dl/win95/personal/se243537.html 助けて下さい。宜しくお願い致します。

専門家に質問してみよう