質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.49%
VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Q&A

2回答

3651閲覧

VBA 指定範囲の印刷について

yhayashi

総合スコア11

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

0グッド

0クリップ

投稿2016/03/12 01:20

指定範囲の印刷を行う際(ダイアログを表示させたいです)、
xlDialogPrintで引数を指定してあげれば、
任意の印刷範囲と開始ページ終了ページを印刷できることは
理解していますが、

たとえば、
「シート1は13ページを印刷し、
シート2は1
2ページを印刷、
シート3は印刷しない」

などの条件がある場合、
ダイアログを表示させて(白黒・カラー印刷などの任意設定を行うため)
一度に指定範囲の印刷を実行する方法はないでしょうか。

ご教示願います。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

以下のサイトが参考になるかと思います。
Excelの組み込みダイアログを使う-moug

印刷ダイアログに次の引数を指定できるようです。

arg1 = 印刷範囲
arg2 = 開始
arg3 = 終了
arg4 = 部数
arg5 = 簡易印刷
arg6 = 印刷プレビュー
arg7 = メモ印刷
arg8 = カラー印刷
arg9 = 紙送り
arg10 = 印刷品質
arg11 = 縦方向の解像度
arg12 = 印刷対象
arg13 = プリンタ名
arg14 = ファイルへ出力
arg15 = 部単位で印刷

上記で実現できなければ、あとはご自身でダイアログフォームを作るくらいでしょうか。

投稿2016/03/13 00:11

thom.jp

総合スコア686

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

VBAとだけの掲示ですが、
次回からは、
EXCEL VBA なのか、Microsoft Office 製品のどのVBAなのか
バージョン、エディション、サービスパックの状態も記入するように、お勧めします。
EXCEL VBA の前程で
1.安直な方法
行いたい事を、マクロ記録で記録して、サンプルコードを取得する。
取得したサンプルコードを元に、実用になるコードに書き換える。
⇒EXCEL VBA お勉強サイト例
OFFICE TANAKA、
https://www.google.co.jp/search?hl=ja&q=OFFICETANAKA&lr=lang_ja&gws_rd=ssl
EXCEL でお仕事!
https://www.google.co.jp/search?hl=ja&q=OFFICETANAKA&lr=lang_ja&gws_rd=ssl#lr=lang_ja&hl=ja&tbs=lr:lang_1ja&q=excel+%E3%81%A7%E3%81%8A%E4%BB%95%E4%BA%8B
2.面倒な方法
印刷ダイアログで可能な事、メーカ製プリンタドライバに依存する部分の区別をする。
殆どの場合、メーカ製プリンタドライバ依存部分は、VBA操作出来ません。
⇒プリンタドライバを複数登録して、ActivePrinter を切替えるのが現実的
EXCEL VBA では、Activeでないプリンタオブジェクトの取得は、面倒です。
>シート1は13ページを印刷し、
>シート2は1
2ページを印刷、
>シート3は印刷しない
シート毎に、ダイアログを出すかどうか。
シート毎、頁事に、ダイアログ操作が必要な事があるかどうか。
⇒シート毎、頁事に、白黒、カラーの指定をしたいかどうかなど。
印刷ダイアログで指定可能な部分は(メーカー製ドライバに依存しない部分)は、
VBAから操作可能です、設定シートか、設定データファイル何か用意して、
予め設定した状態で印刷も可能。
予め設定した状態での印刷の注意は、プリンタドライバー毎に、持っている&使用可能な、
用紙情報が異なる事です。
また、ネットワークプリンタでは、ネットワークプリンタ名の指定の方法で、
躓くかもしれません。(ネット検索で解決可能)
手動でのプリンタ切替時にも起きる、プリンタを切替えると、印刷範囲が変わる現象は、
VBAでも発生します。
⇒対象が少なければ、手動で調整した方が早い。
印刷範囲の再指定、印刷倍率の指定をしなくて済む様に、
出来るだけ、余白がある状態で作成する。(余白調整で、済むように作成する。)

投稿2016/03/12 02:23

daive

総合スコア2028

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.49%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問