
マクロ超初心者です。
すでにマクロが組んであるExcelファイルで、さらに印刷の設定をマクロに組み込みたいです。
やりたい設定は、通常使用しているプリンターとは”別のプリンターに変更”し、”手差しにする”というものです。
「マクロの記録」で印刷設定を変更するところまでを記録しても、反映されません。
印刷してから保存しても、印刷の設定は保存されません。
お分かりになる方がいらしたらご助力いただきたいです。
現在のExcelデータの状況を説明させていただきます。
”名簿”sheetに10名分の名簿と、”書類”sheetにその名簿の人たち向けの書類が作ってあります。
名簿の各個人の宛名等が入った書類を作成するため、”書類”sheetのB2セルに名簿の通し番号を入力すると
該当する人が”名簿”sheetからvlookupで引っ張られてきて書類ができあがるようになっています。
いちいち”書類”sheetのB2セルの数字を変えて印刷ボタンを押すのが面倒なため、
それらを一気に印刷すべく、”書類”sheetのF2セルに”10”と入力してあり、次のマクロを組んであります。
---------------------------------------------
Sub 一気に印刷()
Dim 番号 As Integer
a = Sheets("書類").Range("B2").Value
n = Sheets("書類").Range("F2").Value
For 番号 = a To n
Sheets("書類").Range("B2").Value = 番号
Sheets("書類").PrintOut
Next 番号
End Sub
---------------------------------------------
上記のマクロで、ワンタッチで10枚の別々の書類を印刷できるのですが、
いつも印刷設定をし忘れて10枚の無駄紙を作ってしまいます。
マクロで印刷設定までできればかなり助かるのですが。。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
こんにちは、
>”別のプリンターに変更”し、”手差しにする”というものです。
別のプリンターが分らないので、ダイアログで変更するのは、どうでしょう。
となると、VBAでやる必要ないかもですが、、、
>マクロで印刷設定までできればかなり助かるのですが。。
印刷対象が不明の為、判りませんが
.HPageBreaksなどで改ページを取得するとか、、、ですか?
For 番号 = a To n せずにこれも ダイアログで設定すれば良いのではと思いますが、ボタン一回で印刷する便利さと、どちらを取りますかね。
下記に簡単なサンプルと示しますが、プリンターを変えたい変えたくないの意思はどこで決めるか分からないので、必ずダイアログが表示されます。
各条件、環境などをすべて明示的(論理的)に出来るのなら、ダイアログ表示の必要はありませんが、、参考まで
Dim 番号 As Integer
Dim a As Integer, n As Integer
Dim PrintFlag As Boolean
Dim CH As Boolean
Dim ActPrinter
ActPrinter = Application.ActivePrinter
a = Sheets("書類").Range("B2").Value
n = Sheets("書類").Range("F2").Value
For 番号 = a To n
Sheets("書類").Range("B2").Value = 番号
If PrintFlag <> True Then
CH = Application.Dialogs(xlDialogPrint).Show
If CH = False Then Exit Sub
PrintFlag = True
Else
Sheets("書類").PrintOut
End If
Next 番号
Application.ActivePrinter = ActPrinter
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ファイルが見つからない時、ス...
-
一つのTeratermのマクロで複数...
-
マクロ実行時、ユーザーフォー...
-
ExcelのVBA。public変数の値が...
-
エクセルで特定の列が0表示の場...
-
特定のPCだけ動作しないVBAマク...
-
メッセージボックスのOKボタ...
-
ExcelVBAの繰り返し処理でwebク...
-
ExcelVBAでPDFを閉じるソース
-
excelのマクロで元に戻す方法
-
IF関数を使ってマクロを実行さ...
-
WORD テキストボックスを全ペ...
-
Excelで特定の文字のところで自...
-
Excel・Word リサーチ機能を無...
-
Excel_マクロ_現在開いているシ...
-
UWLSの記録でマクロを作成し使...
-
VC++ 2008 EXPRESS "_T"識別子...
-
VBSからエクセルのマクロを起動...
-
【Excel】複数のマクロをまとめ...
-
【EXCEL VBA】オートシェイプを...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで特定の列が0表示の場...
-
特定のPCだけ動作しないVBAマク...
-
メッセージボックスのOKボタ...
-
Excel_マクロ_現在開いているシ...
-
一つのTeratermのマクロで複数...
-
マクロの連続印刷が突然不可能...
-
ExcelのVBA。public変数の値が...
-
Excel マクロ VBA プロシー...
-
Excel・Word リサーチ機能を無...
-
エクセルに張り付けた写真のフ...
-
Excelのセル値に基づいて図形の...
-
TERA TERMを隠す方法
-
マクロ実行時エラー
-
ExcelVBAでPDFを閉じるソース
-
wordを起動した際に特定のペー...
-
特定文字のある行の前に空白行...
-
Excel マクロでShearePoint先の...
-
エクセルで縦に並んだデータを...
-
マクロ実行時、ユーザーフォー...
-
ソース内の行末に\\
おすすめ情報