最近更新したページ
2013-10-20
2013-09-29
2013-09-23
2012-01-07
2011-11-09
2011-10-23
2011-10-09
2011-10-01
2011-09-29
2011-09-03
2011-08-07
2011-08-02
2011-07-29
2011-07-10
2011-05-05
2011-05-04
2011-04-24
2011-04-13
2011-04-05
2011-03-26
2011-02-18
2011-02-15
2010-12-26
2010-12-07
2010-12-05
2010-11-23
2010-09-28
2010-09-23
2010-08-26
2010-08-22
2010-07-16
2010-01-17
2010-01-11
2009-10-04
2009-08-21
2009-08-13
2009-06-18
2009-06-01
2009-04-29
2009-02-16
2009-02-11
2009-02-03
2008-07-22
2008-07-21
2008-07-15
2008-07-14
2008-07-13
2008-07-12
2008-07-08
2008-07-05
2008-06-28
2008-06-17
2008-06-05
2008-06-02
2008-06-01
2008-05-29
2008-05-26
2008-05-21
2008-05-19
2008-05-18
2007-10-31
2007-10-27
2007-09-28
2007-09-23
2007-09-17
2007-09-16
2007-09-14
2007-09-11
2007-06-18
2007-04-15
2006-12-21
2006-11-30
2006-11-22
2006-08-17
2006-03-29
2006-03-28
2006-03-27

VBA エラー処理


VBA と VB2005のエラー処理の違い

VB2005 では、
  Try
    〜
    '本文処理
    〜
  Catch ex As Exception
    〜
    '例外処理
    〜
  Finally
    〜
    '例外時でも必ず実行する命令など
    '例:OpenしたファイルをCloseするなど
    〜
  End Try
と言ったエラー処理が可能になってますが、VBA では、On Error文 でエラー処理を行います。

勿論 VB2005 でも On Error文が使えますが … 個人的にそれはありえないかなぁ (ーー;)

▲上へ

エラー処理

例外エラー処理にはOn Error 〜文を使います。最新Verではどうか知りませんが Try〜文は使えません。

On Error GoTo文

実行時の例外エラー時に、指定した処理を実行します。
Sub main()

  '▼エラー監視の開始
  On Error GoTo ExceptionHandling
  '〜処理〜
  ' エラー発生で ラベル ExceptionHandling: 以降を実行。
  'エラー監視の終了
  On Error GoTo 0

  MsgBox "正常に終了しました"
  Exit Sub

ExceptionHandling:

  '▼例外処理実行
  MsgBox "エラーメッセージ"
  'エラー処理の実行

End Sub

On Error Resume Next文

実行時の例外エラーを無視します。
Sub main()

  '▼エラー監視の開始
  On Error Resume Next
  '〜処理〜 すべてのエラーを無視して実行。
  'エラー監視の終了
  On Error GoTo 0

  MsgBox "実行時エラーが無視されるので、" & _
         "正しい結果が出ない場合があります"

End Sub

▲上へ

リンク


初めてでも分かるVBAの本



内部リンク



外部リンク


  • まだありません

▲上へ
2009年02月03日(火) 22:48:41 Modified by cafeboy1




スマートフォン版で見る