掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
VBでパラメータクエリのパラメータを指定したい (ID:86770)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
ご迷惑かけてすいません。 (1) Q1が必要とするパラメータは、幾つありますか? 2つです。 (2) Connection のメソッドとして呼び出す手法の替わりに、 先に書いた ADODB.Command オブジェクトを使った場合は、 正しく動作するのでしょうか? もう一度細かく今やっていることを書きます。 アクセス2000でクエリ(Q1とします。)とレポート(R1とします。)を作成しました。Q1は選択クエリで3つのテーブルから作成されています。(T1,T2,T3)とします。 R1はQ1を使って作成しました。(R1のプロパティのレコードソースという項目がQ1になっています。) Q1で”コード”というフィールドがあるのですがそこの抽出条件には Between[開始コードを入力してください] And [終了コードを入力してください] という命令文を記入しています。 これでレポートを開いた際に開始コードと終了コードを入力するボックスがでてきて当てはまるもののみレポート出力できるようにされています。 以上がアクセス側の現状です。 この動作をVB側から行ないたいのですが 開始コードと終了コードをあらかじめフォーム内のテキストボックスなんかに入力してコマンドボタンを押すとその範囲で抽出してレポートを出力できるようにしたいのです。 VB側のコードは現在こんなかんじです。このコードですとアクセス側でレポートを開いたときと同じようにパラメータ(開始コードと終了コード)を求めてきます。 On Error GoTo ErrorHandler Dim Cn As ADODB.Connection Dim RS As ADODB.Recordset Set RS = New ADODB.Recordset cn.Q1 1, 100, RS '戻り値を初期化 AcPrint = True '指定項目のチェック If Len(DbName) = 0 Then MsgBox "データベース名を指定して下さい。", vbOKOnly, "AcPrint Ver.1.1" AcPrint = False End If If Len(ReportName) = 0 Then MsgBox "レポート名を指定して下さい。", vbOKOnly, "AcPrint Ver.1.1" AcPrint = False End If 'Accessファイルを開く Set oleAccess = Nothing Set oleAccess = New Access.Application oleAccess.OpenCurrentDatabase DbName, False 'Accessのレポートを開く Select Case PrintMode Case 0 'Preview oleAccess.DoCmd.OpenReport ReportName, acPreview oleAccess.DoCmd.Maximize oleAccess.Visible = True Case 1 'Print oleAccess.DoCmd.OpenReport ReportName, acNormal oleAccess.CloseCurrentDatabase Set oleAccess = Nothing Case Else MsgBox "モードが誤っています。", vbOKOnly, "AcPrint Ver.1.1" oleAccess.CloseCurrentDatabase Set oleAccess = Nothing AcPrint = False End Select Exit Function 'エラー処理 ErrorHandler: Select Case Err.Number Case 2202 'プリンタドライバ未インストール MsgBox "プリンタドライバがインストールされていません。" & Chr$(13) & "プリンタドライバをインストールして下さい。", vbOKOnly, "AcPrint Ver.1.1" Case 2455 '切り替え時の対応 Exit Function Case 7866 'ファイルが見つからない MsgBox "ファイルが見つかりません。" & Chr$(13) & "パス、ファイル名の確認、使用可能なファイルかを確認して下さい。", vbOKOnly, "AcPrint Ver.1.1" Case Else MsgBox "エラーNo:" & Err.Number & Chr$(13) & Err.Description, vbOKOnly, "AcPrint Ver.1.1" End Select AcPrint = False End Function
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.