• ベストアンサー

Excel VBAでブックの保存時

どなたかご存知の方、教えてくださいませ。 エクセルで、上書き保存または名前を付けて保存する時に、マクロを起動することは可能でしょうか? 目的は入力項目のチェックを行った上で保存できるようにすることです。 よろしくお願いいたします。

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

  • ベストアンサー
  • skyresort
  • ベストアンサー率63% (21/33)
回答No.1

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) ここに入力項目のチェックの構文をいれて、完了していない場合は、cancel=trueを指定してあげれば良いと思います。

ttyy3732
質問者

お礼

skyresortさんへ おかげで解決できました。 すばやい回答をどうもありがとうございました。

関連するQ&A

  • エクセルで「名前を付けて保存する」マクロ

    エクセルのマクロに関して教えて下さい。 作成したエクセルの原稿を指定したフォルダに 「名前を付けて保存する」マクロを作成できればと思っています。 同じ名前で上書きなら問題ないのですが その都度違った名前で保存したい時に困っています。 名前の時だけ手動で入力するか 原稿の中に書いてある名前をコピーする方法でも良いです。 よろしくお願いします。

  • エクセルで上書き保存できない

    取引先から送られてきたエクセルのデータがあります。 私のほうでデータを加工するために、何かを入力し、 「上書き保存」を実行すると 「ファイルを保存できませんでした。」というメッセージが表示されます。 「名前をつけて保存」も出来ませんでした。 ちなみに、このファイルにはマクロを含んでいます。 ファイルを保存できないことと、マクロが関係あると思うのですが、私はマクロの知識が乏しいため、よくわかりません。 なぜ、保存できないのでしょうか? また、保存できるようにする方法はありますでしょうか?

  • Excelメニューからの保存時VBA起動方法?

    Excelメニューからの保存時VBA起動方法? Excelのメニューバーに「上書き保存(S)」、「名前をつけて保存(A)」があります。 これをクリックされたとき自分で作成したVBAを呼び出したいのですがどうしたらよいでしょうか? Excelのバージョンは2003までと2007以降どちらも対応したいのです。

  • ExcelのVBAで名前を付けて保存

    ExcelのVBAで名前を付けて保存としたいのですが、ユウザーフォーム上のテキストボックスに保存する名前を入力したらコマンドボタンでブックが終了するマクロを教えてほしいのですが。 よろしく御教授願います。

  • エクセルで<名前をつけて保存>するマクロに、保存時マクロを含めて保存させることは可能ですか

    エクセル、マクロとも初心者です。 (VBAはわかりません) エクセルのテンプレートファイルを開いて、必要箇所だけ入力すると、その日の日付をファイル名として、<名前を付けて保存する>ようなマクロを作りました。 このままだと、マクロも一緒に保存されてしまいますよね。 マクロを含まずに、<名前を付けて保存>させるマクロって可能ですか? できるとしたら、どうやればいいでしょうか。

  • Excel 上書きは可能、新規保存は不可能にしたい

    共有フォルダにあるファイルに複数人でアクセスできるようになっています。それぞれが入力して上書き保存できるようにしていますが、勝手に名前を付けて保存されてしまい困っています。上書き保存はできるけど、新規保存はできないようにマクロを組みたいと考えていますが、どのようにすればいいのでしょうか?教えてください。

  • エクセル マクロ個人用マクロブックについて。

    エクセルのマクロでの個人用マクロブックでの保存がうまくできません。 表題の件で質問させてください。1台のPCにマクロを数項目登録して色々なエクセルで運用したいんですが 個人用マクロブックで登録するとマクロ作成済みのエクセルを開かなくても良いと知恵袋に見ましたので個人用マクロブックに 名前を入力してマクロ登録致しました。 実際3個作ったはずですがいちばん最初に作ったマクロしか選ぶことができません。どうしたらいいでしょうか? まれに全てのエクセルを閉じて再起動したりすると時たま他のマクロがある時もありますが5個に1回位です。 色々とマクロ作成して作業したいのですが作成したマクロが出てこないで困っています。 対処の仕方ご教授ください。 宜しくお願い致します。

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

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

  • Excelで上書き保存時の確認をはずしたい。

    またお世話になります。 以前EXCELのマクロに付いてココで質問させて貰った物です。 皆様のおかげで無事エクセルVBAを保存時に消したいという質問 (http://okwave.jp/qa3859010.html 参照)は 解決できました!ありがとうございました。 で、質問なのですが、 通常、上書き保存をする時はファイル→上書き保存をすると 何も聞かずに保存がされると思います。 が、VBAを保存時に消したファイルに関して上書き保存をかけると ファイル’****.xls’は前回保存された後、ほかのユーザーによって変 更された可能性があります。操作を選択してください ・コピーを保存する(S) ・変更を上書きする(O) という警告?が出てきます。 現状変更を上書きするを選択して上書き保存をするようにしていますが、 なんで出てくるのでしょうか? そして、どうやったら出ないように出来るのでしょうか? マクロを保存時に消したファイルだけこの現象になり 新規で作ったファイルなどは何も警告が出ずに上書き保存が出来ます。 ちなみにツール-ブックの共有-編集の”複数のユーザーによる同時編集と、ブックの結合を許可する(A)”にチェックマークは付いていません。 過去(2005年頃に同じような質問が検索であったのですが、答えが 確定していなかったので質問させて頂きます。)

  • エクセル:マクロ:保存時に連番をつける

    3シートついたエクセルファイル(雛形)をいつも使うのですが、2シート目のみをデスクトップにある「新しいフィオルダ」に保存したいのですが、マクロで「2シートに行って移動、名前をつけて保存」という過程を記憶させたのですが、いつも同じ名前でしか保存を記憶してないため、「上書きしますか」と出てきてしまいます。自動的に連番かなにかがついて上書きしないで全部ためときたいのですがどうしたらいいでしょうか。 よろしくお願いします。

専門家に質問してみよう