重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

ACCESS2000

コードのPrintoutメソッドですが、条件を指定しても「型が一致しません」とエラーが出ます。

DoCmd.PrintOut stDocName, , , "ID = " & [Forms]!報告書フォーム.Form!ID

としています。

条件を指定することは不可能なんでしょうか?それとも記述の仕方に問題があるのでしょうか?

A 回答 (2件)

#1の回答を書いたものです。



申し訳ございません(^^;; 私が質問をあまり良く読んでおりませんでした。

PrintOutメソッドだったのですね。(OpenReportメソッドと勘違いしてました。)

PrintOutメソッドは、上部のメニューからファイル - 印刷を選択して
現在画面に表示されているオブジェクトを印刷する動作と同じですので
「stDocName」のような変数で印刷するオブジェクト名を指定したり
条件式を付加したりする事はできません。

PrintOutメソッド、OpenReportメソッドなどの使い方に関しては
この辺りが参考になるかと。
http://www.geocities.jp/cbc_vbnet/kisuhen/docmd. …
    • good
    • 0

「ID」というのがテーブルのフィールドだと思われますが


テーブルのデザインでは「テキスト型」になってませんかね?

テキスト型であるならば、条件式を
"ID = '" & [Forms]!報告書フォーム.Form!ID & "'"
"ID = " & Chr(39) & [Forms]!報告書フォーム.Form!ID & Chr(39)
などとしてみてください。

フィールドが数値型ならば、条件式は ID = 10
フィールドがテキスト型ならば、条件式は ID = '10'
のような文字列で指定する必要があり、これが守られていないと「型が一致しません」のエラーが発生します。
    • good
    • 0
この回答へのお礼

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

お礼日時:2005/10/10 00:00

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!