For Each objSHEET In ActiveWorkbook.Sheets で シートを1つ1つ取り出し(表現が悪いか、代入して)
シート単位の処理を回してみる。
Sub make_all() 'Menuシート以外繰り返す Dim objSHEET As Object For Each objSHEET In ActiveWorkbook.Sheets If objSHEET.Name <> "MENU" Then objSHEET.Select 'シートを切り替え(アクティブにする) Call chk_and_Quit_all 'データを作成する End If Next End Sub
シート名、MENUシートはマクロの起動ボタンなどデータ処理に関係ないので、
If objSHEET.Name <> "MENU" Then で 名前を見て、名前がMENU以外なら、
objSHEET.Select でシートをアクティブにして、
データ処理関数(chk_and_Quit_all)を呼んでみた。