マクロをVBAに変換したときのエラー処理の説明

TIPSメインへ戻る

概要説明

マクロをVisual Basic に変換するとエラー処理のコードが追加されます。次の例は「名簿フォームを開く」マクロを変換したものです。

自動作成されたコード

Function 名簿フォームを開く()
On Error GoTo 名簿フォームを開く_Err  '① エラーコード

DoCmd.OpenForm "F_名簿", acNormal, "", "", , acNormal

名簿フォームを開く_Exit: '⑥
Exit Function '②

名簿フォームを開く_Err: '③
MsgBox Error$ '④
Resume 名簿フォームを開く_Exit '⑤

End Function

コードの説明

  1. ①がエラー処理のコードです。エラーが発生した時に「名簿フォームを開く_Err」というラベルに移る命令が出ています。 ラベルはコロン(:)を末尾に付けたコードです。
  2. エラーが発生しなければコマンドを実行し、②でプロシージャを抜けます。
  3. エラーが出た時は指定ラベルに飛びます。③
  4. エラーメッセージが出されます。④
  5. 確認後、Resume コードで示されたラベルに飛びます。⑤
  6. ⑥に移った後 Exit でプロシージャを抜けます。
※エラー処理がなければプロシージャは停止してしまいますが、エラー処理があることで停止せずに「エラーが出ている」 メッセージが出てプロシージャが終了します。

(この項終わり)