会社員プログラマー「Kaia May」のコードの備忘録サイトです〜!

Access VBAで帳票フォームで該当するレコードがある場合とない場合の処理を分ける

帳票フォームの詳細で選択したIDのレコードを検索し、値があった場合の対応と値がなかった場合の処理例

 

'帳票が既に発行されているか確認
Dim Rardb As DAO.Database
Dim Rarrs As DAO.Recordset
Dim RarvSQL As String
RarvSQL = "SELECT * FROM T_帳票 WHERE 請求番号 = " & Me.SeikyuID
Set Rardb = CurrentDb()
Set Rarrs = Rardb.OpenRecordset(RarvSQL, dbOpenDynaset)
'該当レコードがなかったらSeikyuCHKまで飛ぶ
Rarrs.FindFirst "請求番号 = " & Me.SeikyuID
If Rarrs.NoMatch Then
GoTo SeikyuCHK
'該当するレコードがあって、帳票発行日に値があった場合
ElseIf Not IsNull(Rarrs!帳票発行日) Then
MsgBox "選択された請求番号の帳票は既に発行済みです。" + vbNewLine + vbNewLine + "削除するには、帳票の発行履歴を取り消す必要があります。" + vbNewLine + vbNewLine + "「帳票処理」よりこの請求番号に紐づく発行履歴を抽出し取り消してください。", vbOKOnly + vbCritical, "帳票発行済のため削除できません。"
Exit Sub
End If
Rarrs.Close
Set Rarrs = Nothing
Rardb.Close Set
Rardb = Nothing
SeikyuCHK:

>bokucode

bokucode

遅ればせながらプログラミングを始めた静岡在住の30代の会社員プログラマー「Kaia May」です!
いろんな言語のコードに挑戦していきたいと思っていて、その中でメモしておきたいコードや今後も使えるコードやその説明などを記録していきます。
他にも参考になったおすすめサイトや書籍なども紹介していきます。

CTR IMG