• ベストアンサー

ACCESSのPrintoutメソッドについて

ACCESS2000 コードのPrintoutメソッドですが、条件を指定しても「型が一致しません」とエラーが出ます。 DoCmd.PrintOut stDocName, , , "ID = " & [Forms]!報告書フォーム.Form!ID としています。 条件を指定することは不可能なんでしょうか?それとも記述の仕方に問題があるのでしょうか?

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

  • ベストアンサー
回答No.2

#1の回答を書いたものです。 申し訳ございません(^^;; 私が質問をあまり良く読んでおりませんでした。 PrintOutメソッドだったのですね。(OpenReportメソッドと勘違いしてました。) PrintOutメソッドは、上部のメニューからファイル - 印刷を選択して 現在画面に表示されているオブジェクトを印刷する動作と同じですので 「stDocName」のような変数で印刷するオブジェクト名を指定したり 条件式を付加したりする事はできません。 PrintOutメソッド、OpenReportメソッドなどの使い方に関しては この辺りが参考になるかと。 http://www.geocities.jp/cbc_vbnet/kisuhen/docmd.html

その他の回答 (1)

回答No.1

「ID」というのがテーブルのフィールドだと思われますが テーブルのデザインでは「テキスト型」になってませんかね? テキスト型であるならば、条件式を "ID = '" & [Forms]!報告書フォーム.Form!ID & "'" "ID = " & Chr(39) & [Forms]!報告書フォーム.Form!ID & Chr(39) などとしてみてください。 フィールドが数値型ならば、条件式は ID = 10 フィールドがテキスト型ならば、条件式は ID = '10' のような文字列で指定する必要があり、これが守られていないと「型が一致しません」のエラーが発生します。

Scotty_99
質問者

お礼

回答ありがとうございました。早速やってみました。両方ともやってみましたが、うまくいきませんでした。「型が一致しません」というエラーが出てしまいます。でも、Printoutメソッドでは条件式が使えるということですね。その辺で調べてみる必要がありそうですね。とても参考になりました。また、なにかわかったら教えてください。

関連するQ&A

専門家に質問してみよう