HOME > 中級編 > 警告メッセージを非表示にする

警告メッセージを非表示にする

警告メッセージを非表示にする方法を紹介します。
ループで処理を繰り返しているときに、処理の度に警告メッセージが出ていたら面倒くさいですよね?
無駄な警告メッセージは非表示にしてしまいましょう。

●構文
Sub Sample()
Application.DisplayAlerts = False
処理
Application.DisplayAlerts = True
End Sub

「Application.DisplayAlerts」に「False」を設定してあげることで、警告メッセージを非表示にすることができます。
処理が終わったら、必ず「True」を設定しなおしてください。

あまり何のことを言っているのか分からない方は、下の2つのサンプルを実行してみてください。

●サンプル1(警告あり)
Sub samaple()
Dim i As Long
Application.ScreenUpdating = False
For i = 1 To 10
Worksheets.Add
Worksheets(1).Delete
Next
Application.ScreenUpdating = True
End Sub

●サンプル2(警告なし)
Sub samaple()
Dim i As Long
Application.ScreenUpdating = False
For i = 1 To 10
Worksheets.Add
Application.DisplayAlerts = False
Worksheets(1).Delete
Application.DisplayAlerts = True
Next
Application.ScreenUpdating = True
End Sub

画面の逐次更新を抑止する


サンプル1は、シートの削除を行う度に同じ警告メッセージが表示されたと思います。
しかし、サンプル2は警告メッセージの表示なくあっという間に処理が終わったのではないでしょうか。

このようにいちいち出てくる警告メッセージを非表示にすることが可能となります。
しかし、「警告」ですので本当にこのまま処理を続けたら問題が発生する場合も考えられます。
ですので、なんでもかんでも非表示にするのではなく、「あの警告がここで出るからこの部分だけ非表示にしよう」という具合にピンポイントで非表示にしてあげましょう
サンプルでは、シートの削除の際に警告が出ることが把握できているので削除の部分だけピンポイントで非表示にしています。




画面の逐次更新を抑止する 自動計算を止めて処理速度を向上する





inserted by FC2 system