• ベストアンサー

エクセルのマクロで

Auto Filterで印刷したい部分を選んで、PrintOutメソッドで印刷するのですが、どの部分選んでもページ数が1ページ目からはじまって印刷になってしまうのですが、ワークシートのそこにあるページ数で印刷したいのですができますか?100ページとかある場合一文字づつ登録するのは大変なので。それにいろいろなところにあるのでFrom,Toでは指定できないと思うのですが。

質問者が選んだベストアンサー

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.1

(1)全体文書 (2)フィルタをかけて、出で来た文書 のことを言っているのでしょうが (1)はプリンターが、初めから終わりまで、メモリに文書を展開していって、印刷体制に入る。そのとき、3ページ目といっても、印刷プレビューを見ないと、人間にはどの行からどの行印刷か正確にわからないが、FROM3 TO5ページなどの指定ができる。しかし改ページを人間が入れない限り、どの行からどの行になるかはお任せです。紙かジャムって、2-3ページが読めないので、2-3ページを再印刷と言った場合以外は使えないのではないでしょうか。 (2)まして(2)のフィルタ後のデータを印刷するときは、(1)のページ内容とは関係がなく、フィルタ後の文書におけるページでしょうから、ページ指定しても余り役立たないでしょう。 (1)自分で改ページを入れる(操作やVBA) (2)自分で印刷行数(Range)をVBAで制御しない限り GOTO PAGE 3といった指令や仕組みがないので、できないでしょう。 >ワークシートのそこにあるページ数で印刷したいのですができますか この意味はわかりにくいですね。またページ数はページ番号とでも言ったほうが明瞭でしょうね。 プリンタとプログラムの相互連携は、プログラム側から一方通行はできるが、プリンタの情報をフィードバックは難しい。 プリンタは、印刷せよという指令でメカ的に印刷を突っ走り、紙が詰まったなどの異例状態以外はデータが返ってきてないと思う。 印刷プレビューが、メモリに文書を印刷用に展開していった状態の図示なので、コンピュタはその通りプリンターに指令を出すので、人間が気に食わない場合は、それに改ページ面から、手を加える、そして、印刷はお任せしかないでしょう。

ma-raion
質問者

お礼

ありがとうございました。なかなかできないことは本読んでもわからないので。 わかりづらい説明の日本語ですみませんでした。

関連するQ&A