- ベストアンサー
レコード件数が0件なら印刷をしない。
おはようございます。 アクセス2000でVBAを書いています。 あるテーブル(テーブルA)を元にレポート(レポートB)を作成しました。テーブルAのレコード件数が0件の時、印刷をさせたくないのですが、うまく書けません。IF文で分岐したいのでよろしくお願いします。 ちなみにテーブルAには顧客ID、カナ氏名、漢字氏名等が入っています。 誰か、助けて~!
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
一例として・・・ If DCount("顧客ID", "テーブルA") > 0 Then 'レコードがあるときの処理 Else 'レコードがないときの処理 End If あるいは・・・ If DCount("顧客ID", "テーブルA") = 0 Then 'レコードがないときの処理 End If 'あとはそのまま続行 詳しくはヘルプで「DCount」を調べてください。
その他の回答 (3)
- happypoint
- ベストアンサー率36% (521/1422)
こちらが参考になるのではないでしょうか。 Access Q&A Library
Aテーブルを対象に作成したレコードセットを myRSとおいた場合、 IF myRS.Recordcount=0 then 印刷しない Else 印刷する End IF でいける気がしますが、、、
> 件数が0件の時、印刷をさせたくないのです '******** Form ******** Private Sub cmdPrint_Click() On Error Goto ErrLine DoCmd.OpenReport "ReportName", Args...... Exit Sub ErrLine: DoCmd.Hourglass False Select Case Err.Number '2212 プリンタが無効。 '2501 印刷中止。 Case 2212, 2501 DoCmd.CancelEvent Case Else 'その他のエラー。 Beep Call MsgBox(CStr(Err.Number) & ":" _ & vbCrLf & Err.Description _ & vbCrLf & vbCrLf & "エラーが発生しました。", _ vbCritical, "エラー") End If End Sub '******** Report ******** Private Sub Report_NoData(Cancel As Integer) Beep Call MsgBox("印刷対象となるレコードがありません。", vbExclamation) Cancel = True End Sub
お礼
いやぁ~出来ました!ホント、みなさんの知識には頭が下がります。ペコリ! ありがとうございました。