- PR -

Excelのプリンタ設定を変更

1
投稿者投稿内容
iwamu
会議室デビュー日: 2005/10/27
投稿数: 16
投稿日時: 2005-10-27 13:31
現在VB6.0で,Excelオブジェクトを用いてExcelファイルの全シートを印刷するPGを作成中です。

印刷時のプリンタ設定は
部数:2部
カラー:白黒印刷
と決まっており,APIを用いてプリンタの設定をこれらに変更する方法は分かりました。
しかし,実際に動かしてみると,APIで設定したプリンタの設定よりも,Excelファイルが内部に保持しているプリンタの設定が優先されてしまいます。

Excelファイルが内部に保持しているプリンタの設定(DEVMODE構造体?)をPGから変更する方法はないでしょうか?
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2005-10-27 13:49
API でなくとも、Excel オブジェクト側で出来ると思いますが...

プリンタ指定は、Printout メソッドの ActivePrinter 引数が使えます。
部数ならば、Printout メソッドの Copies 引数が使えます。
白黒印刷ならば、PageSetup の BlackAndWhite プロパティを True にすれば出来ます。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
iwamu
会議室デビュー日: 2005/10/27
投稿数: 16
投稿日時: 2005-10-27 22:07
PrintOutメソッドの引数,およびPageSetupオブジェクトの
各プロパティを設定することによって,希望の動作が実現しました!

じゃんぬねっと様,どうもありがとうございました。
かつのり
ぬし
会議室デビュー日: 2004/03/18
投稿数: 2015
お住まい・勤務地: 札幌
投稿日時: 2005-10-27 23:58
Excel全般に言えることですが、
マクロ記録モードにして、自動化したい動作を実行すると、
どういう関数・プロパティを操作すべきかわかると思います。

VBAのソースとVB6のソースはそんなに変わりがありませんので、
簡単に移植も可能ですよ。

#ヘルプより早いかもしれません。
iwamu
会議室デビュー日: 2005/10/27
投稿数: 16
投稿日時: 2005-10-28 07:46
>かつのり様
あぁ,なるほど・・・
役立つアドバイスをありがとうございます!
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2005-10-28 08:55
あとは VB のサイトだと情報が少ないですので、
VBA マクロ系のサイトを調べると「出来ること」が把握できます。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
iwamu
会議室デビュー日: 2005/10/27
投稿数: 16
投稿日時: 2005-11-01 15:47
白黒印刷の設定についてさらに質問させてください。

PageSetupを用いた方法で変更できるのは,Excel側のページ設定の中にある白黒印刷の設定のようです。
Excelのページ設定ではなく,プリンタの印刷設定画面(各プリンタで異なる)で,白黒印刷(グレースケール印刷)を設定したいのですが,これをVB側から制御するにはどのようにしたらよいでしょうか。

試しにマクロ記録モードで動かしてみたところ,プリンタの印刷設定画面をいじった部分はコードに反映されていませんでした。

ExcelのVBAではプリンタ側の設定は変更できないのでしょうか。
AccessではDEVMODEをVBAからいじれるようですが・・・
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2005-11-01 17:51
引用:

iwamuさんの書き込み (2005-11-01 15:47) より:

PageSetupを用いた方法で変更できるのは,Excel側のページ設定の中にある白黒印刷の設定のようです。


その通りです。
ユーザの意図しない設定の変更は、本来行ってはいけないのでお勧めしました。

引用:

ExcelのVBAではプリンタ側の設定は変更できないのでしょうか。
AccessではDEVMODEをVBAからいじれるようですが・・・


DEVMODE で白黒印刷って制御できましたっけ?
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=12234&forum=7

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
1

スキルアップ/キャリアアップ(JOB@IT)