• 締切済み

スプレッド(Spread 6) で縮小印刷をしたい

Visual Basic 6.0 SP5 Far Point Spread 6.0 で開発しています。 Spreadで帳票を作成し、印刷するプログラムを作成したのですが、 帳票サイズが大きすぎるため指定の用紙に入りきりません。 .PrintSmartPrint プロパティで横幅を用紙サイズに合わせた印刷はできたのですが、縦は結局2ページ目に入ってしまいます。 Spreadのヘルプは一通り目を通したのですが、イマイチいい方法が見つかりません。 Spreadでの実現方法、もしくは代替方法でもありましたらご教授願います。

みんなの回答

回答No.2

私は下記で縮小してます。 参考になるとよいのですが。 ちなみに、用紙のサイズ設定ができなくて 困っているのですが。 たぶん、通常のプリンタのデフォルトの用紙 で出力されていると思います。 PrintSettings.Orientation = FarPoint.Win.Spread.PrintOrientation.Landscape '横 PrintSettings.UseMax = True 'データを含む行のみ印刷 PrintSettings.ZoomFactor = 0.9 ’縮小 PrintSettings.Header = "/cタイトル/r" & Format(Today, "yyyy/MM/dd") PrintSettings.Footer = "/c/p / /pc" 'フッタの設定 PrintSettings.Margin.Header = 35 'ヘッダの余白設定 PrintSettings.Margin.Left = 40 '左余白設定 PrintSettings.Margin.Right = 10 '右余白設定 PrintSettings.Margin.Top = 90 '上余白設定

  • Kuppycat
  • ベストアンサー率50% (109/216)
回答No.1

.PrintSmartPrint は、あくまで幅を合わせるだけの機能のはずなので、1ページに収めるところまでは出来ないはず。 別のレポートツールを使うか、Excelと連動させるとかしないと無理みたいです。 具体的な代替方法はちょっと検証している時間がないので、提示できません。ごめんなさい。

TG1
質問者

お礼

回答ありがとうございます。 誰にもお答えいただけないかと思っていたのでほっとしました。 質問後私自身もさらに調べてみたのですがやはり難しいようですね。 出来ないとはっきりしただけでもありがたいです。 APIを使って無理やり画像として取得して…とかいろいろ考えてもいたのですが、Excelとの連動が一番スマートかも知れません(今回のプロジェクトでもExcelは使う)。 ただSpreadからExcelに出力すると標準の罫線が太字になったり、画面では見えないグリッドが出てきてしまったりして厄介ですが…

関連するQ&A