アプリ版:「スタンプのみでお礼する」機能のリリースについて

現在 2つのbookがあります。
・データ data.xls
・集計 total.xls
★条件は以下
・この2つのbookには同じ名前の 『sheet名・数』が情報保持しています。
・sheet名は不特定の名前が付けられています。
★処理したいマクロ内容
・data.xls …の各sheet と total.xls 各sheet参照させて
マッチしたら処理。
マッチしなかったらマクロ強制終了。

Sub match()

Dim i As Integer

For i = 1 To Worksheets.Count

'任意のbookを指定します
Windows("data.xls").Activate
sheet_copy = ActiveSheet.Name
Sheets(sheet_copy).Select

'範囲を選択 コピーします
Range("C2").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy

On Error Resume Next '---前後にシートが無い場合のエラーを無視
ActiveSheet.Next.Select

'任意のbook と sheet を指定します
Windows("total.xls").Activate
sheet_paste = ActiveSheet.Name
Sheets(sheet_paste).Select
Range("D2").Select

If sheet_copy = sheet_paste Then
ActiveSheet.Paste
ActiveSheet.Next.Select
Else
MsgBox "sheet miss match error!"
'★マクロ強制終了
End If
Next i
End Sub

★部分に何と記述すればよろしいでしょうか?
アドバイスお願い致します。

A 回答 (1件)

matchプロシージャが他のプロシージャから呼び出されているのでなければ、"Exit Sub"が良いかと思います。


もし、他のプロシージャから呼び出されているのであれば、"Exit Sub"と書いても呼び出し元のプロシージャの動作は止められませんので、工夫が必要となります。
    • good
    • 1
この回答へのお礼

Exit Sub で問題解決しました。
アドバイスありがとうございましたm(__)m

お礼日時:2005/05/30 01:32

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!