『削除しますか?』にもうイライラしない!Excel VBAでシート削除の確認メッセージを秒で消す1行

【業務効率化】VBA
スポンサーリンク

時間を奪ってくる「親切なお節介」

こんにちは!ぐーです。
いつもブログをご覧いただき、ありがとうございます!

Excelでシートを削除するときに出る「このシートは完全に削除されます。続けますか?」という確認メッセージが邪魔なときありませんか?

たとえば、VBA(マクロ)を使って「不要なシートを削除する」という処理を作成したとします。

しかし、実行するたびにポップアップが表示され、その都度「削除」ボタンを押さなければなりません。

「わかってるよ!消したいからプログラム動かしてるんでしょ!」って、イラッとしませんか?

たった「1クリック」の手間ですが、もし100枚のシートを処理するとしたら100秒(約1分半)はロスです。しかも、その間ずっとパソコンの前に張り付いていないといけません。これでは自動化の意味が半減してしまいますよね。

今回はあれを消す方法を紹介します。

【業務効率化】VBAの記事を見る

解決策:Excelに警告を出させない

このメッセージを出さないようにするには、Application.DisplayAlerts(アプリケーション・ディスプレイアラーツ)という設定を使用します。

イメージとしては、Excelに一時的な「耳栓」をさせて、警告を無視させるような感覚です。

コピペで使えるコード

では、実際のコードを見てみましょう。

コードをコピーして、シート名をご自身の環境に合わせて書き換えるだけで使えます。

※実際にシートが削除されるため、必ずテスト用のファイルで動作を確認してください。

Sub シートを削除する()

    ' 1. Excelの警告メッセージをオフにする
    Application.DisplayAlerts = False

    ' 2. シートを削除する
    ' ※削除したいシート名に合わせて書き換えてください
    Sheets("削除したいシート").Delete

    ' 3. Excelの警告メッセージをオンに戻す
    Application.DisplayAlerts = True

End Sub

ポイント:「サンドイッチ」にすること

削除の命令(Delete)を、警告オフ(False)と警告オン(True)で必ず挟んでください。

  1. False で警告を無視させる。
  2. その間にシートを削除する。
  3. True で元の状態(安全装置)に戻す。

もし、最後の True を書き忘れるとどうなると思いますか?

Excelはずっと「耳栓」をしたままになります。そうすると、保存時の確認など、本来表示されるべき重要な警告まで出なくなってしまう恐れがあります。

これは運用上、非常に危険です。

「外出時に鍵をかける」のと同じように、「Falseにしたら必ずTrueに戻す」というセット操作を徹底しましょう。

【業務効率化】VBAの記事を見る


VBAを独学で学び、業務自動化に5年以上携わってきた私が、「本当に実務で役立った!」と感じた2冊を紹介します。 もう本選びで失敗したくない方は、よければ参考にしてみてください。

この記事を書いた人
ぐー

手取り15万円の会社員でも、年間100万円以上の節約・資産管理・スキルアップで新NISAで年間360万円投資し、iDeCoもフル活用しています。日商簿記3級持っています。

このブログでは、私が実践してきた節約術やリアルな資産運用、稼ぐ力を高めるITスキルについて発信しています。

生活を豊かにしたくて、高配当株投資で年間配当金60万円をめざしています。現在は年間配当金25万円以上達成!

ゲーム・漫画・アニメなどが好きです。
一緒に資産形成をがんばりましょう!
よろしくお願いします!

ぐーをフォローする
【業務効率化】VBAITスキル
スポンサーリンク
ぐーをフォローする

コメント

タイトルとURLをコピーしました