ExcelのVBAを使って印刷するものによって給紙方法を変えたいと思っています。
調べてみたところ'SendKeysステートメントを使うと設定できそうだったので、下記のような命令文を作ってみたのですがうまく動きません。
どなたか詳しい方いらっしゃいましたら教えていただけないでしょうか?
OS:WindowsXP
使用ソフト:Microsoft Excel2003
使用プリンタ:NEC PR-2860N
【コマンドボタン】
本書印刷 → 印刷範囲:「一枚目」(あらかじめ設定してある名前)
給紙方法:自動
控え印刷 → 印刷範囲:「二枚目」
給紙方法:ホッパー2
Private Sub 控え印刷_Click()
With ActiveSheet.PageSetup
.PrintArea = "二枚目"
End With
MyPrinterSet
ActiveSheet.PrintOut
End Sub
――――――――――――――――――――――――――――――
Private Sub 本書印刷_Click()
With ActiveSheet.PageSetup
.PrintArea = "一枚目"
End With
MyPrinterSet2
ActiveSheet.PrintOut
End Sub
―――――――――――――――――――――――――――――――
Private Sub MyPrinterSet() 'SendKeysステートメントでプリンタ設定
'自動給紙から手差しへ変更
ActiveSheet.Select
SendKeys "%FU" 'Excel画面でファイル(F)、ページ設定...
SendKeys "%O" ‘オプション
SendKeys "{TAB 8}" ‘一番端の[メイン]のタブに合わせる
SendKeys "{RIGHT}" ‘一つ右の[用紙]タブへ移動
SendKeys "%S" ‘給紙方法選択
SendKeys "{DOWN 2}" 'ホッパー2に設定
SendKeys "{ENTER}"
SendKeys "{TAB 5}" ‘[用紙]タブを選択
SendKeys "{LEFT}" ‘一つ左の[メイン]タブへ移動
SendKeys "{ENTER 2}"
――――――――――――――――――――――――――――――
End Sub
Private Sub MyPrinterSet2() 'SendKeysステートメントでプリンタ設定
'例、EPSON LP-****を手差しから自動へ変更
ActiveSheet.Select
SendKeys "%FU" 'Excel画面でファイル(F)、ページ設定...
SendKeys "%O"
SendKeys "{TAB 4}" ‘初期値へ戻すを選ぶ
SendKeys "{ENTER 4}"
End Sub
――――――――――――――――――――――――――――――
No.2ベストアンサー
- 回答日時:
Sendkeysでやるなら、waitを入れないといけません。
設定画面を開くかどうかの判定を待たずにキー入力していまいます。
そして、待たされる時間というのはPCの能力や状態によって変わるものです。故に、不安定です。
画面が開くまでの間に
Application.wait Time:=now+TimeValue("00:00:01")
とかを間に入れてみてください。(間に合わなければ00:00:02とか)
1つのSendkeyも、
Sendkeys "XXX", True
とかにして調節してみてください。
こんな感じでうまいwait時間を見つけたとしても、やっぱり不安定なのは変わらないと思います。
私も作業軽減のためにSendkeysを使いますが、数回~数十回に一回は失敗します。それでも楽は楽なので使っていますがね。
おかげさまで何とかかんとか動くようにはなりました。
不安定に変わりはないんですね^^;
でもやっぱり便利なので使ってみたいと思います。
ご丁寧にありがとうございました。
No.1
- 回答日時:
SendKeysは不安定なので 止めといた方がいいです。
ぐだぐだとやるより コントロールパネルに 同じプリンタを追加して
そっちのデフォルト設定で 給紙を指定のものにしておけばいいのでは?
それなら プリンタを変更するマクロを作るだけで済みます。
この回答への補足
いちいち設定するのがめんどうだなあと簡単な気持ちでやってみたのですが、
ほんとにグダグダになってしまいどうしようかと思っていました。
その方法を先にやろうと思ったのですが、
会社のパソコンは共有して使っているので余計なのを増やすな
といわれてしまってできなかったのです。
もしかしてそれを何とかするほうが簡単なのでしょうか;
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 【マクロ】スクショ印刷がうまく動かない件 5 2022/12/06 17:37
- Excel(エクセル) 【マクロ】webアドレスにて指定されたCSVファイル【excelソフト表示】を印刷する件 1 2023/02/15 01:52
- Visual Basic(VBA) VBAでPDFのアクティブページ番号取得 1 2023/05/25 12:41
- その他(Microsoft Office) Excelのマクロについて教えてください。 1 2022/03/25 10:03
- Visual Basic(VBA) エクセル365のVBAで困っています。どう修正したらよいか添削をお願いします 2 2023/05/03 17:35
- Visual Basic(VBA) 数式が消える 1 2023/03/19 16:55
- その他(パソコン・スマホ・電化製品) Webページ印刷時にヘッダー・フッターをつけたい 1 2022/04/25 21:35
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Excel(エクセル) Excelであるシートだけ印刷できない 1 2022/04/01 09:04
- Visual Basic(VBA) 動かなくなってしまった古いVBAを動くようにしたい 8 2022/09/20 13:57
このQ&Aを見た人はこんなQ&Aも見ています
-
好きなおでんの具材ドラフト会議しましょう
肌寒くなってきて、温かい食べ物がおいしい季節になってきましたね。 みなさんはおでんの具材でひとつ選ぶなら何にしますか? 1番好きなおでんの具材を教えてください。
-
秘密基地、どこに作った?
小さい頃、1度は誰もが作ったであろう秘密基地。 大人の今だからこそ言える、あなたの秘密基地の場所を教えてください!
-
ホテルを選ぶとき、これだけは譲れない条件TOP3は?
ホテルを探す時、予約サイトで希望条件の絞り込みができる便利な世の中。 あなたは宿泊先を決めるとき「これだけは譲れない」と思う条件TOP3を教えてください。
-
【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
【お題】 ・買ったばかりの自転車を分解してひと言
-
あなたの習慣について教えてください!!
あなたが習慣だと思って実践しているものを共有してくださいませんか? 筋肉トレーニングでも朝シャワーでも、あなたが習慣だなと思えば何でも構いません
-
エクセルVBAで手差しトレイを指定させたい。
Excel(エクセル)
-
マクロでプリンタ、用紙、給紙先を指定するには?
Excel(エクセル)
-
エクセルVBAでプリンタプロパティを操作したい
Visual Basic(VBA)
-
-
4
VBでExcel印刷する時のプリンタトレイの選択方法について
Visual Basic(VBA)
-
5
【Excel VBA】プリンタのプロパティダイアログの表示
Excel(エクセル)
-
6
エクセルの印刷ダイアログをSendkeysで操作したい。
PowerPoint(パワーポイント)
-
7
Excelマクロで印刷設定
Visual Basic(VBA)
-
8
Accessでのプリンター給紙トレイの指定
その他(データベース)
-
9
Canon LBP-3600 の PaperBin の値
Visual Basic(VBA)
-
10
EXCELで特定のセルに表示された項目をヘッダーやフッターに出力するには
Excel(エクセル)
-
11
マクロで印刷時のポートについて
Access(アクセス)
-
12
「プリンタの設定」ダイアログボックスのプリンタを指定したい。
その他(プログラミング・Web制作)
-
13
EXCEL マクロに於ける プリンタ番号検索方法
その他(Microsoft Office)
-
14
VBAによる用紙サイズ変更(PrtDevMode)
Excel(エクセル)
-
15
メッセージボックスに表示する文字を大きくしたい
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/12】 急に朝起こしてきた母親に言われた一言とは?
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・好きな「お肉」は?
- ・あなたは何にトキメキますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・チョコミントアイス
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・あなたの習慣について教えてください!!
- ・ハマっている「お菓子」を教えて!
- ・高校三年生の合唱祭で何を歌いましたか?
- ・【大喜利】【投稿~11/1】 存在しそうで存在しないモノマネ芸人の名前を教えてください
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・家の中でのこだわりスペースはどこですか?
- ・つい集めてしまうものはなんですか?
- ・自分のセンスや笑いの好みに影響を受けた作品を教えて
- ・【お題】引っかけ問題(締め切り10月27日(日)23時)
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ワードやエクセルで印刷をデフ...
-
エクセルでB6サイズに印刷し...
-
Excelの表を二段で印刷したい
-
エクセルシート A3にしてもA4...
-
JW-CADで印刷すると線が太くなる
-
ソフト別に印刷設定を自動で変...
-
作成したPDFファイルを自動表示...
-
word印刷時に勝手に手差し印刷...
-
PDF書類をずらして印刷したい
-
パワーポイントの印刷が画面表...
-
「詳細な印刷機能を有効にする...
-
PDFファイルを印刷するときにフ...
-
PDFのプリントアウトが重す...
-
特定のEXCELのファイルを印刷す...
-
エクセルでブックごとにプリン...
-
イラストレーターでの印刷について
-
文字の濃度を薄く印刷したい
-
ワード A4サイズで作成した...
-
PDFフアィルの文字色を変えて印...
-
改ページプレビューで設定した...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ワードやエクセルで印刷をデフ...
-
エクセルでB6サイズに印刷し...
-
エクセルシート A3にしてもA4...
-
Excelの表を二段で印刷したい
-
JW-CADで印刷すると線が太くなる
-
ソフト別に印刷設定を自動で変...
-
PDFのプリントアウトが重す...
-
word印刷時に勝手に手差し印刷...
-
エクセルでブックごとにプリン...
-
作成したPDFファイルを自動表示...
-
パワーポイントの印刷が画面表...
-
「詳細な印刷機能を有効にする...
-
PDF書類をずらして印刷したい
-
ワード A4サイズで作成した...
-
PDFファイルを印刷するときにフ...
-
特定のEXCELのファイルを印刷す...
-
Photoshopで両面印刷はできます...
-
改ページプレビューで設定した...
-
Wordでの印刷で、白紙が省略さ...
-
EXCEL 印刷設定を保存する方法
おすすめ情報