• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:クリレポのプリンタ設定について)

クリレポのプリンタ設定について

このQ&Aのポイント
  • VB6.0バンドル版のクリスタルレポートを使用して、VBからレポートを出力するプログラムを作成中です。しかし、プリンタの給紙方法が「自動選択」にしていても、意図しない動作が起こることがあります。プリンタが変わると、サイズや給紙方法が変更されてしまいます。
  • この問題に困った経験がある方、どのように対処されたか教えていただけませんか?また、プリンタに依存せずに給紙方法を自動的に切り替える方法があれば教えてください。
  • クリレポでプリンタ設定を行っても、実使用時には設定が反映されないことがあります。これにより、意図しない給紙方法やサイズで印刷されることがあります。プリンタ設定に関する問題を解決するための助言や打開策があれば、教えてくださると助かります。

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

  • ベストアンサー
  • sienna
  • ベストアンサー率35% (51/145)
回答No.1

VB6にはクリスタルレポートがついていませんので VB5からアップグレードしたVB6って事でしょうか? (VB5にはついてました。 .NETにもつくようですね) だとすると私が使っているCrystal Reports 8.5とは多少違うかも しれませんが、OCXを使用していると無理みたいです。 RDCの場合、フォームエディタ→ファイル→「プリンタの設定」画面で 「既定のプロパティ」のチェックをはずしておくとレポートが持っている プリンタ情報で印刷されるようです。 が、プリンタ選択を行うとレポートの保持している情報は破棄されるようなので ランタイム環境でプリンタを選択させている場合はプログラミングで 設定しないとならないようです。 ひょっとしたらプリンタごと(ドライバごと)にレポートファイルを作成 した方が楽かもしれません。

AnyBody
質問者

お礼

ありがとうございます。 やはり「プリンタごとに作る」しかないということですね。 ちなみにVB5バンドル版のクリレポで、VBのプログラムからプリンタ設定を動的に変更することは可能なのでしょうか?何かヒントになることでもご存知でしたら、教えていただけませんか?

その他の回答 (1)

  • sienna
  • ベストアンサー率35% (51/145)
回答No.2

プリンタ設定を動的に変更するのであれば、Printerオブジェクトで 設定すればよいと思います。 私はPrinter.PaperSizeにて用紙サイズを変更しようとしたのですが プリンタごとに定数が違うようなので上手くいきませんでしたが。 (私の場合少し特殊な用紙を使用していた関係もあると思いますが。) APIに何かあるのかも知れませんが私は良くわかりません。 逆に何か方法があるなら教えてください(笑)

AnyBody
質問者

お礼

ありがとうございました。 Printerオブジェクトについて調べてみます。