これならわかるマイクロソフトアクセス活用法


VBAでのエラー処理



━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
                                             Vol.037

 これならわかるマイクロソフトアクセス活用法
  -->VBAでのエラー処理
              
                             発行者:高内 章治 2007/10/18
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
┏ 今日の内容 ━━━━━━━━━━━━━━━━━━━━━━━━┓
┃              
┃ 【01 - ご挨拶   】                    
┃ 【02 - トピックス 】VBAでのエラー処理      
┃ 【03 - 編集後記   】                   
┃                               
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

─────────────────────────────────
【01 - ご挨拶    】          
─────────────────────────────────

こんにちは、高内(こうない)です。


今回は、

「VBAでのエラー処理」

についてお話したいと思います。


─────────────────────────────────

【02 - トピックス】: VBAでのエラー処理

─────────────────────────────────

フォームでのいろいろな処理をVBAのコードを使って、書いていく時、
間違っていると、エラーが発生します。

「Microsoft Visual Basic」のタイトルでメッセージボックスが表示
されます。
実行時エラー xxxx と内容が表示されて下に「継続」「終了」
「デバッグ」「ヘルプ」のボタンが表示されます。

プログラムを使用しているユーザーの人はびっくりしますね。

どれをクリックしてよいかわかりません。

「終了」ボタンをクリックすると処理が終わります。
「デバッグ」ボタンをクリックすると大変ですね。
エラーのあったVBAのコードの個所へカーソルが移動します。

ユーザーの人はどうしたらよいかわかりませんね。

プログラムを組む人はかならず、エラー処理を入れておいた
方がよいです。

全部の処理についてです。

全部の処理とは、
ボタンの「クリック時」、データの「更新前処理」「更新後処理」
などの処理の全部についてです。


エラー処理のコード理は、全部共通でよいです。

例をあげて説明します。

ボタンのクリック時にいれている処理です。

---------------------------------------

Private Sub 入庫画面_Click()
On Error GoTo Err_LABEL

Dim stDocName As String

'-- フォームを開く
stDocName = "F_入庫画面"
DoCmd.OpenForm stDocName, , , stLinkCriteria

Exit_LABEL:
Exit Sub

Err_LABEL:
MsgBox (Err.Number & "," & Err.Description)
Resume Exit_LABEL

End Sub

-----------------------------------

説明しやすいように番号をつけます。

1.Private Sub 入庫画面_Click()
2.On Error GoTo Err_LABEL

3.Dim stDocName As String

4. '-- フォームを開く
5. stDocName = "F_入庫画面"
6. DoCmd.OpenForm stDocName, , , stLinkCriteria

7.Exit_LABEL:
8. Exit Sub

9.Err_LABEL:
10. MsgBox (Err.Number & "," & Err.Description)
11. Resume Exit_LABEL

12.End Sub

---------------------------------

入庫画面をクリックしたときの処理です。
簡単な処理です。

F_入庫画面というフォームを開いています。

どのようになるのか説明します。

エラーが発生しないと3から6までの処理をおこなって
12に行っておわります。

エラーが発生すると

2の処理がおこなわれます。
エラーが出たらErr_LABELへ行けということです。
Err_LABELの名前は何でもよいです。

9のErr_LABELへ行きます。
10でエラー番号とエラーの内容を表示します。
11に行って次にExit_LABELへ行きます。
Exit_LABELの名前は何でもよいです。

7のExit_LABELへ行きます。
8のExit Subでこの処理を終わります。

これで、エラーが発生してもエラーは表示しますが
プログラムは終わることなく続けることができます。

このエラー処理は、入れるようにした方がよいですね。

ウィザードを使っていろいろな処理を作る場合は、VBAの中では
自動でこのエラー処理が作られます。

参考にしてください。


─────────────────────────────────
【03 - 編集後記    】       
─────────────────────────────────

先日、省エネや環境関係の展示会に行ってきました。

大手、中小、大学も含め多くの会社が展示していました。
見学している人も多くてびっくりしました。
「不都合な真実」の上映会もやっていました。

環境に関する意識が高いのですね



◆ホームページを少しづつ頑張って、まとめています。
まだ十分まとまっていませんが、参考にしてください。

http://www.sk-access.com/index.html  
 
◆私がアクセスをマスターできたのは!!
 「在庫管理システムをアクセスで作ってみよう」教材は

http://www.sk-access.com/Kyozai/Zaiko1.html  


◆ロット別の在庫管理ができる格安ソフトです。
 マイクロソフトアクセスで動きます。是非、ご覧ください。

http://www.sk-access.com/Soft/Kzaiko_Desc.html  

 ロット別に在庫管理ができるソフトって少ないのですよ。


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
●ご意見・ご感想・ご質問
 
『メルマガでもっとお役にたてる情報を配信したいと思いますので、
日ごろから疑問に思っていることを教えてください。宛先はこちらへ』

 → kohnai@vega.ocn.ne.jp   (高内:こうない)

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

【発行人】: 高内 章治(こうない しょうじ)
【ホームページ】: http://www.sk-access.com/index.html
【メールアドレス】: kohnai@vega.ocn.ne.jp
【購読登録・解除】: http://www.mag2.com/m/0000222659.html (まぐまぐ)


◎「これならわかるマイクロソフトアクセス活用法」 の
  バックナンバー・配信停止はこちら

http://archive.mag2.com/0000222659/index.html

◎以下のホームページからでもバックナンバーを見ることができます。

http://www.sk-access.com/MailMaga/Mail_List1.html

   登録・解除につきましてはご自身でお願いいたします。

※このメールマガジンの転送はOKですが、掲載された記事の内容を
許可無く転載することをを禁止させて頂きます。
必ず事前にご相談ください。

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━



アクセスを使って1週間でシステム構築ができる〜「在庫管理システムをアクセスで作ってみよう」教材
「アクセスでシステムを早く開発したい方」、
「アクセスでシステム開発をあきらめた方」のための
アクセスを使って1週間でシステム構築する究極の方法とは?