
No.3ベストアンサー
- 回答日時:
No.2の方の答えが正しいです。
MsgBoxを表示させた後に、
Exit Subをつけないと、処理がそのまま続行されてしまうので、
エラーが発生してしまいます。
なので、データのチェックを行い、
エラーメッセージを表示した後に、
必ず、ExitSubをつけましょう。
No.2
- 回答日時:
これでどうなるかわかりませんが、
'データ名が入力されているかどうかチェック
If IsNull([Forms]![ラベル作成登録画面]![cmbDTL]) Then
MsgBox "データ名[左]を入力してください"
End If
などの入力チェックに
'データ名が入力されているかどうかチェック
If IsNull([Forms]![ラベル作成登録画面]![cmbDTL]) Then
MsgBox "データ名[左]を入力してください"
Exit Sub
End If
というようにExit subを入れないとプログラムは進んでいってしまうんじゃないですかね。
No.1
- 回答日時:
うーん。
。。難しい質問ですね。質問自体は、すごく単純な質問なのですが、
実際のプログラムを見てみないと、返答ができません。
例えばですが、
本来であれば処理を実行する前に、処理するデータが存在するかどうかをチェックして、
存在しないのであれば、処理をExitするだけだと思います。
プログラムを載せる事はできますか?
この回答への補足
kouta52さんへ
プログラムの内容は下記のとおりです。
宜しくお願いします。
**************************************************
'ラベル作成登録画面の左をクリック
Private Sub 左_Click()
'データ名が入力されているかどうかチェック
If IsNull([Forms]![ラベル作成登録画面]![cmbDTL]) Then
MsgBox "データ名[左]を入力してください"
End If
'病院名が入力されているかどうかチェック
If IsNull([Forms]![ラベル作成登録画面]![cmbHPL]) Then
MsgBox "顧客名[左]を入力してください"
End If
'曜日が入力されているかどうかチェック
If IsNull([Forms]![ラベル作成登録画面]![cmbYBL1]) Then
MsgBox "曜日1を入力してください (予備の場合は空白を選択してください)"
End If
'曜日が入力されているかどうかチェック
If IsNull([Forms]![ラベル作成登録画面]![cmbYBL2]) Then
MsgBox "曜日2を入力してください (予備の場合は空白を選択してください)"
End If
'曜日が入力されているかどうかチェック
If IsNull([Forms]![ラベル作成登録画面]![cmbYBL3]) Then
MsgBox "曜日3を入力してください (予備の場合は空白を選択してください)"
End If
'ラベルレポートを開く
DoCmd.OpenForm "左"
With [Forms]![左]![txtDTL1]
.SetFocus
.Text = [Forms]![ラベル作成登録画面]![cmbDTL]
End With
With [Forms]![左]![txtDTL2]
.SetFocus
.Text = [Forms]![ラベル作成登録画面]![cmbDTL]
End With
With [Forms]![左]![txtDTL3]
.SetFocus
.Text = [Forms]![ラベル作成登録画面]![cmbDTL]
End With
With [Forms]![左]![txtHPL1]
.SetFocus
.Text = [Forms]![ラベル作成登録画面]![cmbHPL] + " 御中"
End With
With [Forms]![左]![txtHPL2]
.SetFocus
.Text = [Forms]![ラベル作成登録画面]![cmbHPL] + " 御中"
End With
With [Forms]![左]![txtHPL3]
.SetFocus
.Text = [Forms]![ラベル作成登録画面]![cmbHPL] + " 御中"
End With
With [Forms]![左]![txtYBL1]
.SetFocus
.Text = [Forms]![ラベル作成登録画面]![cmbYBL1]
End With
With [Forms]![左]![txtYBL2]
.SetFocus
.Text = [Forms]![ラベル作成登録画面]![cmbYBL2]
End With
With [Forms]![左]![txtYBL3]
.SetFocus
.Text = [Forms]![ラベル作成登録画面]![cmbYBL3]
End With
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) vbaエクセルマクロについて あるデータを作成し、デスクトップに.xlsx形式で保存するマクロを作成 2 2023/03/02 18:54
- Visual Basic(VBA) vbaエクセルマクロ RemoveDuplicatesについて 重複したものがあれば行を削除するとい 1 2023/02/27 18:49
- Visual Basic(VBA) vbaエクセルマクロについて あるデータを作成し、デスクトップに.xlsx形式で保存するマクロを作成 6 2023/03/03 18:05
- その他(メールソフト・メールサービス) サンダーバードメール移動しない 1 2023/05/13 11:21
- Visual Basic(VBA) エクセル 2つの列にある値の完全一致を抜き出すVBA 15 2022/12/15 03:22
- Visual Basic(VBA) VBA For Each 〜 複数条件について 3 2022/10/20 20:05
- Visual Basic(VBA) 【VBAエラー】Nextに対するForがありません 対策について 5 2022/11/21 21:26
- Visual Basic(VBA) VBAでの共有パスにつきまして 1 2023/03/04 17:24
- Visual Basic(VBA) エクセルVBA コードが同じでもファイルによって処理速度が大きく変わるのはなぜ 5 2022/11/06 21:34
- Visual Basic(VBA) Vba 互換モードでのAppActiveについて教えてください 2 2022/06/27 18:47
このQ&Aを見た人はこんなQ&Aも見ています
-
OLE又はDDEを使うVISUAL BESICモジュールを実行している時は…と表示されます
その他(Microsoft Office)
-
AccessからExcelにエクスポートする時に常に上書きしたい
Excel(エクセル)
-
Accessフォームを開くときに決まった順番で表示
Access(アクセス)
-
-
4
Access IF文でテーブルに存在しない場合の処理について
Access(アクセス)
-
5
クエリをキャンセルしたいのですが。。。
その他(データベース)
-
6
AccessのRefresh・Requery・Repaintの違い
Access(アクセス)
-
7
レコード件数が0件なら印刷をしない。
Access(アクセス)
-
8
アクセスのレポートでレコード数をカウントしたい
その他(データベース)
-
9
Accessが不良です
その他(データベース)
-
10
「#エラー」の回避
Access(アクセス)
-
11
アクセスでテキストボックスの値が空白だったら
Access(アクセス)
-
12
アクセスで入力したデータの順番が変わってしまいます
その他(ビジネス・キャリア)
-
13
「RunSQL」と「Execute」の違い
Access(アクセス)
-
14
Accessでサブフォームの中の並べかえを固定したい
Access(アクセス)
-
15
SQL文で パラメータが少なすぎます エラー
Access(アクセス)
-
16
アクセスのフォームに入力する文字に制限をかけたい
Access(アクセス)
-
17
Accessのクエリで、replace関数を使い、データの中にある”をブランクに置き換えたいのですが
Access(アクセス)
-
18
On ErrorでエラーNoが0
Visual Basic(VBA)
-
19
Accessのマクロでモジュールを実行させたい。
Access(アクセス)
-
20
Access サブフォームでの選択行の取得
その他(データベース)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
マクロの解読に困っています
-
エクセルVBA作成時と実行時のエ...
-
複数の関数の中から戻り値の戻し方
-
Excel VBA セルの名前があるか...
-
VBSのプログラムをタスクスケジ...
-
AVIFileInitに関して
-
VBS mdb参照時にテーブルor列が...
-
VBA Vlookup #N/A表示させない方法
-
vbaのエラー対応(実行時エラー...
-
『Do ~ Until (0)』の『Until ...
-
SQLの条件式
-
「内部処理形式 String の Vari...
-
IF文に時間(何時から何時ま...
-
MS Access と VB6
-
ExcelのVBAで、選択したファイ...
-
特定の名前のオートシェイプの...
-
UWSファイルを VBで実行させたい
-
特定のファイルを他のプロセス...
-
処理水問題についてスライドを...
-
ListViewから選択中の文字列を取得
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【C#/Java?】try-catchでcatch...
-
vbaのエラー対応(実行時エラー...
-
private subモジュールを他のモ...
-
マクロで、次のコードへ行く前...
-
シグナル 6(SIGABRT)とは?
-
特定の名前のオートシェイプの...
-
IF文に時間(何時から何時ま...
-
どう増強すべきか
-
特定のファイルを他のプロセス...
-
Word VBA。各マクロの間に待ち...
-
どうやってもFor文を抜けてしま...
-
Excel VBA セルの名前があるか...
-
ExcelのVBAで、選択したファイ...
-
【C#】Page_Loadさせない方法に...
-
StatusStripの表示が更新されな...
-
途中で処理を中断させたい (ア...
-
エクセル VBAで複数セル選択時...
-
Functionで戻り値を複数返す方法
-
VBAでBook読み込み時の非表示方...
-
VBA 複数の行を高速で削除する...
おすすめ情報