• ベストアンサー

VBからACCESSのレポートを印刷で範囲指定

oleAccess.DoCmd.OpenReport ReportName, acNormal oleAccess.CloseCurrentDatabase  今、上のソースでは、データベース全件、印刷されるので、範囲指定をしたいのですが、どうすればいいですか? お願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • Watapo3
  • ベストアンサー率76% (33/43)
回答No.3

文字列の範囲を指定するという事が、いい事か悪い事かは別として・・・・ 通常、文字列を扱う場合はダブルクォーテーション「"」で括る事はご存知だと思います。 ダブルクォーテーション内でダブルクォーテーションを使用する場合にはシングルクォーテーションを使用する事もご存知かと思います。 よって、 oleAccess.DoCmd.OpenReport ReportName, acNormal,,"伝票番号 between '1' and '5'" となります。

その他の回答 (2)

  • Watapo3
  • ベストアンサー率76% (33/43)
回答No.2

伝票番号が数値型であれば oleAccess.DoCmd.OpenReport ReportName, acNormal,,"伝票番号 between 1 and 5" でよろしいかと・・・・(^ ^;

GERRARD
質問者

補足

文字列の場合はどうなるのでしょか?

  • Watapo3
  • ベストアンサー率76% (33/43)
回答No.1

DoCmd.OpenReportの引数は以下のようになっております。 DoCmd.OpenReport reportname[, view][, filtername][, wherecondition] whereconditionに抽出条件を引き渡してください。

GERRARD
質問者

補足

もう一つ質問なんですが、伝票番号が 1 ~ 5 までを印刷したい場合はどうすればいいのですか?

関連するQ&A

  • VB6からACCESSのレポートを印刷 

    今いちを印刷はでます。だけど下のソースでは、何部印刷するかとかできないとおもうのですが、例えば、3部印刷するにはどういう風にプログラムを作るのですか。 かたちは、テキストに数字を入れるようなかんじにするのでよろしくおねがいします。 oleAccess.DoCmd.OpenReport ReportName, acNormal

  • VB6からACCESSのレポートを印刷  

    OpenReportはレポート1 text2.text はテキスト型(何部印刷) oleAccess.DoCmd.OpenReport ReportName, acNormal oleAccess.DoCmd.PrintOut acPages, , , , CInt(Text2.Text) 上記の内容では印刷したときに、印刷ドキュメントがOpenReportとPrintOutでは違うんですけど,これでは 別々のデータが印刷さるのでこまってます。どうかいいアドバイスを下さい. 例  ACCESSのテーブル    テーブル1(青くなっている状態)    テーブル2    ACCESSのレポート    レポート1(青くなっている状態) っていう具合になっていて、ACCESSを開くとテーブル1にカ ーソルがある状態。 印刷のドキュメント レポート1 テーブル1 っいうふうになっていて、困っています. レポート1だけを何部印刷するとかはできないんですかね?

  • VB6からアクセスのレポートをプレビューするには?

    おはようございます。またまた躓いたのでお助け下さい<(_ _)>VB6で、アクセス2000にパーツ名を読み書きしています。アクセスの方でレポートを作ってあるのですが、印刷はいけそうなのですが、これを印刷前にプレビューしたいのですが、 Set accApp = CreateObject("Access.Application") accApp.OpenCurrentDatabase "C:\part-name.mdb" accApp.DoCmd.OpenReport "パーツ情報", acViewNormal 印刷について参考にさせていただいたソースです。DoCmd.OpenReport が印刷ですよね?ここを変更するのでしょうか?よろしくお願いします<(_ _)>

  • access vba レポートを複数部印刷

    MS-Access 2007です。 VBAでレポートを印刷しています。 2部印刷したいときはどのようにすればよいでしょうか。 現在は Dim stDocName As String stDocName = "請求書印刷" DoCmd.OpenReport stDocName, acNormal で一部印刷しています。 二回繰り返せば2枚出ますが2部としてプリンターに送りたいのです。 宜しくお願いします。

  • Accessのレポート印刷について教えて下さい。

    Accessのフォームでフィルタを使い絞り込んだデータをレポートで 印刷する場合について教えて下さい。 DoCmd.OpenReport "レポート名", acViewPreview, , Me.Filter では、フォームとレポートが同じレコードソースだと使えるという事ですが、 フォームとレポートのレコードソースが別の場合はどのようにすると フィルタで絞り込んだ条件のレポートを印刷できますか? 教えて下さい。よろしくお願いします。

  • Accessのレポート印刷について

    Access2007を使用しています。 DoCmd.OpenReport "レポート名", acViewNormal, , Me.Filter で絞り込みをした内容のレポートで1枚目だけが印刷されるようにしたいのですが、 どうしたら良いですか? 2枚目・3枚目は印刷したくないので、1枚目だけが印刷されるようにしたいです。 よろしくお願いします。

  • アクセスについてです(レポート)

    フォームからレポートを開く時に、 VBAでコントロールにコントロールソースを指定したいのですが どうやらエラーになってしまうようです。 フォームからではなく手動でレポートを開く場合は エラーにはなりません。 レポートのレコードソースは、T_testを指定していて、 その上にあるコントロールは非連結で指定したコントロールソースをvbaで入れたいです。 なので、レポートのLoadイベントで Private Sub Report_Load() Me.テキスト0.ControlSource = "8月" End Sub として、手動でレポートを開く分には問題ないのですが このコードのまま、フォームから Private Sub コマンド0_Click() DoCmd.OpenReport "レポート1", acViewPreview End Sub とすると、Me.テキスト0.ControlSource = "8月"で、 実行時エラー2191 印刷プレビュー時または印刷を開始した後は コントロールソースプロパティを設定できません。 のエラーが発生します。 フォームから Private Sub コマンド0_Click() DoCmd.OpenReport "レポート1", acViewDesign End Sub とすると、レポートのLoadイベントが発生しませんでした。 ご回答よろしくお願いします。

  • ACCESSのVBAでプリンタを指定したい

    ACCESSでレポートを2つ作成し、フォームのボタンでレポートの印刷を行っています。 押されたボタンで、印刷するレポートが違うのですが、その時に、プリンタを指定したいのです。 Private Sub レポート印刷_Click() Dim stDocName As String stDocName = "レポート印刷" DoCmd.OpenReport stDocName, acNormal End Sub 上記のような感じで作っているのですが、それぞれのレポートで印刷するプリンタが違います。 どのようにしたらいいでしょうか?

  • アクセスのレポートの印刷について。

    アクセスで報告書を作成し、印刷する時に、ウィザードを使って作ったコマンドボタン「報告書の印刷」を使用したいのですが、全てのレコードが印刷されます。以下の記述でどこを変更すればよいか教えてください。 また、基本的な質問なのですが、レポートのプレビュー上にコマンドボタンを配置することは可能でしょうか?(やはり、無理でしょうか?) よろしくお願いいたします。 Private Sub 報告書の印刷_Click() On Error GoTo Err_報告書の印刷_Click Dim stDocName As String stDocName = ChrW(22577) & ChrW(21578) & ChrW(26360) DoCmd.OpenReport stDocName, acNormal Exit_報告書の印刷_Click: Exit Sub Err_報告書の印刷_Click: MsgBox Err.Description Resume Exit_報告書の印刷_Click End Sub

  • Access2000でリスト指定の印刷

    現在Access2000で顧客管理のデータベースを作成しています。 指定したレコードだけを印刷する、指定レコード印刷フォームを作成しようと思い、フォームにリストボックスを貼り付け、そのフォームに印刷ボタンを作成しました。 その、印刷ボタンのプロパティ(クリック時)のイベント設定は、次のように設定したのですが、うまく動きません。 Private Sub 印刷ボタン_Click() On Error GoTo Err_印刷ボタン_Click Dim stDocName As String Me.Visible = False stDocName = "kokyaku_report" DoCmd.OpenReport stDocName, acNormal, , "id = " & id Exit_印刷ボタン_Click: Exit Sub Err_印刷ボタン_Click: MsgBox Err.Description Resume Exit_印刷ボタン_Click End Sub ちなみに、テーブルの主キーは「id」としております。 申し訳ありませんが、お分かりの方がいらっしゃったら宜しくお願い致します。

専門家に質問してみよう