ファイルを開いたり保存したりするたびに、メッセージが表示されたり、データリンクの更新について聞かれたりと、メッセージや警告が表示され、せっかくの自動処理がストップしてしまわないよう、Excelくんに黙っておいてもらう方法です。
各種
いずれも、目的を達成したら「もう話してもいいよ~」と ~ true へもどしたりしよう。
警告を非表示
Application.DisplayAlerts = False
'処理を記述
Application.DisplayAlerts = true
画面の更新を停止
Application.ScreenUpdating = False
'処理を記述
Application.ScreenUpdating = true
次の処理はエラーを無視させる
On Error Resume Next
'エラーを無視させる処理を記述
データリンクの更新をせずにブックを開く
Workbooks.Open "開きたいファイル" , UpdateLinks:=0
とにかく閉じる(保存せずに閉じる、とか)
Workbooks.Close SaveChanges:= False
これでも同じ
Application.DisplayAlerts = False
"閉じたいファイル".Close
Application.DisplayAlerts = true
保存して閉じたいならこうするだけ
Workbooks.Close SaveChanges:= true
イベントを実行させない
※自動マクロを起動させたくないときとかに使う。
Application.EnableEvents = False
'処理を記述
Application.EnableEvents = true
サンプル
ファイルを開いて閉じるだけ。
Sub OpenClose()
Dim FilePath As String: FilePath = "開きたいファイルのフルパス"
'// 画面更新の停止
Application.ScreenUpdating = False
'// データリンクの更新をしないで開く
Dim Book As Workbook: Set Book = Workbooks.Open(FilePath, UpdateLinks:=0)
'// エラーを無視して次へ
On Error Resume Next
Range(Cells(1, 1), Cells(hoge, hoge)).Value = "hogehoge"
'// 保存せずに閉じる
Book.Close SaveChanges:=False
'// 画面更新の再開
Application.ScreenUpdating = True
End Sub