[[20210625145636]] 『条件によって印刷範囲を変更する』(さば) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『条件によって印刷範囲を変更する』(さば)

印刷紙幅に合わせてラジオボタンを設定して
VBAでそれぞれ印刷範囲を指定する

 Sub 幅A_Click()
 With ActiveSheet

   .PageSetup.PrintArea = "$K$1:$N$50"
 End With
 End Sub

その後プレビューまではちゃんと指定通り表示はできているのですが、
印刷物が全体表示の印刷になってしまいます。

何か設定があるのでしょうか?

< 使用 Excel:Office365、使用 OS:Windows10 >


そのマクロを実行したときのActiveSheetと
印刷したシートが同一であることは間違いないんですね?

(γ) 2021/06/25(金) 15:45


はい、私もマクロは詳しいほうではないのですが、マクロは開いているシートの印刷になります。
一応他のPCで試しても同じ現象でした。
(さば) 2021/06/25(金) 15:47

名前ボックスをクリックすると Print_Area が表示されますか。

(RT) 2021/06/25(金) 16:37


>名前ボックスをクリックすると Print_Area が表示されますか。

名前ボックスはエクセルの左上のもので合ってますでしょうか。

印刷したいラジオボタン選択>名前ボックス[Print_Area]選択する>印刷したい部分の選択
…は一応できました。

でも印刷物は相変わらず全画面印刷になってしまいます…。
(さば) 2021/06/25(金) 16:50


 こんばんは ^^
印命令直前のところでMsgbox等で
プリントエリアの値を調べてみては。。。
空のポップが出てたりしませんでしょうか?m(__)m
(隠居じーさん) 2021/06/25(金) 17:31

こんばんは。ありがとうございます。
なるほど・・・
ポップは確認できていません…。
一度正常に表示できていた印刷範囲を印刷実施して(失敗するのですが)、
再度印刷プレビューを出すと失敗した印刷範囲のプレビューにはなります。。
(さば) 2021/06/25(金) 17:44

>名前ボックスはエクセルの左上のもので合ってますでしょうか。
はいそうです。数式バーの左です。
(RT) 2021/06/25(金) 18:43

一応、print_areaは出ます。
が、やはり選択してプレビューまでは出て印刷結果が巧く行きません…。
(さば) 2021/06/25(金) 20:31

 ActiveSheets
はお止めになって、シート名を、PageSetup、PrintOut、とも明示的に
指定すると、どうなりますか。
一部しかコードが掲載されていませんが、支障がなければ全てアップしてみると、
明快なアドバイスが得られるかもしれません。。。←多分 ^^;
m(__)m
(隠居じーさん) 2021/06/25(金) 21:04

 Sub 幅A_Click()
     With ActiveSheet
         .PageSetup.PrintArea = "$K$1:$N$50"
        .PrintPreview
     End With
 End Sub
 この結果はどうなるんですか? 
(γ) 2021/06/25(金) 22:25

うまくいくなら(うまくいくと思うが)、PrintOutに変更すればよいと思う。
>印刷物が全体表示の印刷になってしまいます。
どうやって印刷しているか秘密にしているので、第三者にはまったくわからない。

(γ) 2021/06/25(金) 23:19


上記のようにPrintViewを入れると全体表示のプレビューになってしまいます。
でもPrintViewを入れず普通にctrl+Pではちゃんと印刷範囲通りの画面になるのですが…そういうものなのでしょうか…?

該当マクロ以外は関数で組んでいるので印刷範囲は単純にPrintAreaだけでいいならマクロの方が簡単なのではという安易な考えでラジオボタンにそのまま一番最初のようなマクロを登録しています。

逆にもしマクロを使わず作業用シート等用いて関数などでできる方法があればご教授いただきたいです。

(さば) 2021/06/28(月) 17:03


 他は関数なら、ユーザー設定のビューで印刷パターンを変えるとかでは
 ダメでしょうか?
 いや、結局どんな印刷がしたいのかよくわからないので
 的外れかも知れませんが…
(コナミ) 2021/06/28(月) 17:30

私は、「全体表示になる」というから「印刷範囲設定の範囲が無効になる」という
話かと思いましたよ。どう読んでも、そうとしか読めない。

>印刷物が全体表示の印刷になってしまいます。
と言う説明から、印刷範囲が限定したものでなく、すべてが印刷されて
しまって困っている、という話かと思いましたよ。

貴君が言っているのは、プレビュー画面の違いということ?
・ファイル - 印刷 の画面はリボン登場と共に追加されたもの(これが今では主体?)
・マクロの .Previewはそれ以前からあるもの
という画面が二つある、という話だったんですか?

そうだったらそうハッキリ書いて貰わないと、伝わりませんよ。
で、この二つはどっちにしたって、大した差はなく、
実質的に困ることなんかないじゃありませんか。
印刷がきちんとされれば何も問題ないじゃないですか、違いますか?
(γ) 2021/06/28(月) 23:57


 これがテータとして

     |[A]   |[B]   |[C]   |[D]   |[E]   |[F]   |[G]   
 [1] |AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA
 [2] |AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA
 [3] |AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA
 [4] |AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA
 [5] |AAAAAA|AAAAAA|あああ|あああ|あああ|AAAAAA|AAAAAA
 [6] |AAAAAA|AAAAAA|あああ|あああ|あああ|AAAAAA|AAAAAA
 [7] |AAAAAA|AAAAAA|あああ|あああ|あああ|AAAAAA|AAAAAA
 [8] |AAAAAA|AAAAAA|あああ|あああ|あああ|AAAAAA|AAAAAA
 [9] |AAAAAA|AAAAAA|あああ|あああ|あああ|AAAAAA|AAAAAA
 [10]|AAAAAA|AAAAAA|あああ|あああ|あああ|AAAAAA|AAAAAA
 [11]|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA
 [12]|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA
 [13]|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA
 [14]|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA
 [15]|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA 

 普通に印刷プレビュー

 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA
 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA
 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA
 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA
 AAAAAA	 AAAAAA	 あああ	 あああ	 あああ	 AAAAAA	 AAAAAA
 AAAAAA	 AAAAAA	 あああ	 あああ	 あああ	 AAAAAA	 AAAAAA
 AAAAAA	 AAAAAA	 あああ	 あああ	 あああ	 AAAAAA	 AAAAAA
 AAAAAA	 AAAAAA	 あああ	 あああ	 あああ	 AAAAAA	 AAAAAA
 AAAAAA	 AAAAAA	 あああ	 あああ	 あああ	 AAAAAA	 AAAAAA
 AAAAAA	 AAAAAA	 あああ	 あああ	 あああ	 AAAAAA	 AAAAAA
 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA
 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA
 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA
 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA
 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA

 >上記のようにPrintViewを入れると全体表示のプレビューになってしまいます。

 (γ)さんの式でセル範囲を変更しています。

 Sub 幅A_Click()
     With ActiveSheet
         .PageSetup.PrintArea = "$C$5:$E$10"
         .PrintPreview
     End With
 End Sub

 マクロを実行後のプレビュー

 あああ	 あああ	 あああ
 あああ	 あああ	 あああ
 あああ	 あああ	 あああ
 あああ	 あああ	 あああ
 あああ	 あああ	 あああ
 あああ	 あああ  あああ

 "$C$5:$E$10"の範囲でこのように表示されますけど違いますか。

 >全体表示のプレビューになってしまいます。
 普通に印刷プレビューした表示になるということですか。

(Pre) 2021/06/29(火) 09:53


Pre様の例で巧くいけば私も万々歳なのですが、
プレビュー段階では指定通り【あ】のみ、
印刷物は

 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA
 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA
 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA
 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA
 AAAAAA	 AAAAAA	 あああ	 あああ	 あああ	 AAAAAA	 AAAAAA
 AAAAAA	 AAAAAA	 あああ	 あああ	 あああ	 AAAAAA	 AAAAAA
 AAAAAA	 AAAAAA	 あああ	 あああ	 あああ	 AAAAAA	 AAAAAA
 AAAAAA	 AAAAAA	 あああ	 あああ	 あああ	 AAAAAA	 AAAAAA
 AAAAAA	 AAAAAA	 あああ	 あああ	 あああ	 AAAAAA	 AAAAAA
 AAAAAA	 AAAAAA	 あああ	 あああ	 あああ	 AAAAAA	 AAAAAA
 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA
 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA
 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA
 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA
 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA	 AAAAAA

となる、という具合です。

もっと細かくいえば
上記のデータを使用させていただきまして

     |[A]   |[B]   |[C]   |[D]   |[E]   |[F]   |[G]   |[H]
 [1] |AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA
 [2] |AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA
 [3] |あああ|あああ|いいい|いいい|いいい|ううう|ううう|ううう
 [4] |あああ|あああ|いいい|いいい|いいい|ううう|ううう|ううう
 [5] |あああ|あああ|いいい|いいい|いいい|ううう|ううう|ううう
 [6] |AAAAAA|AAAAAA|いいい|いいい|いいい|ううう|ううう|ううう
 [7] |AAAAAA|AAAAAA|いいい|いいい|いいい|ううう|ううう|ううう      [〇]ラジオボタン(あ範囲
 [8] |AAAAAA|AAAAAA|いいい|いいい|いいい|ううう|ううう|ううう   [〇]ラジオボタン(い範囲
 [9] |AAAAAA|AAAAAA|いいい|いいい|いいい|ううう|ううう|ううう   [◎]ラジオボタン(う範囲
 [10]|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|ううう|ううう|ううう
 [11]|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|ううう|ううう|ううう
 [12]|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA
 [13]|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA
 [14]|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA
 [15]|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA

としたとき、

マクロ実行後プレビューでは

 ううう ううう ううう
 ううう ううう ううう
 ううう ううう ううう
 ううう ううう ううう
 ううう ううう ううう
 ううう ううう ううう
 ううう ううう ううう
 ううう ううう ううう
 ううう ううう ううう

ですが、印刷物は

     |[A]   |[B]   |[C]   |[D]   |[E]   |[F]   |[G]   |[H]
 [1] |AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA
 [2] |AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA
 [3] |あああ|あああ|いいい|いいい|いいい|ううう|ううう|ううう
 [4] |あああ|あああ|いいい|いいい|いいい|ううう|ううう|ううう
 [5] |あああ|あああ|いいい|いいい|いいい|ううう|ううう|ううう
 [6] |AAAAAA|AAAAAA|いいい|いいい|いいい|ううう|ううう|ううう
 [7] |AAAAAA|AAAAAA|いいい|いいい|いいい|ううう|ううう|ううう      [〇]ラジオボタン(あ範囲
 [8] |AAAAAA|AAAAAA|いいい|いいい|いいい|ううう|ううう|ううう   [〇]ラジオボタン(い範囲
 [9] |AAAAAA|AAAAAA|いいい|いいい|いいい|ううう|ううう|ううう   [◎]ラジオボタン(う範囲
 [10]|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|ううう|ううう|ううう
 [11]|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|ううう|ううう|ううう
 [12]|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA
 [13]|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA
 [14]|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA
 [15]|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA|AAAAAA

となってしまいます。
この例で言えば着地はプレビュー通り【う】のみが印刷です。

補足で範囲(あ〜う)は開始行は同じですが、範囲が異なる3データです。

(さば) 2021/07/02(金) 12:09


最後の全体表示はコピペしてしまったので正確には[A]や[1]までは出ませんがラジオボタンのところまでは印刷されます。

(さば) 2021/07/02(金) 13:04


Sub 幅A_Click()
     With ActiveSheet
         .PageSetup.PrintArea = "$C$5:$E$10"
         .PrintPreview
     End With
 End Sub
を実行したとき、$C$5:$E$10の内容だけが表示されるんですか?
そのときに、プレビュー画面にある「印刷」ボタンをクリックしたらどうなるんですか?
プレビュー画面どおり印刷されないんですか?

(確認) 2021/07/02(金) 14:08


>$C$5:$E$10の内容だけが表示されるんですか?
.PrintViewでプレビュー表示すると全体(上記例ではラジオボタンまで出る)になってしまいます。
印刷範囲は合っていると思うのですが…。
仮に.PrintViewを消して手動[ctrl]+Pで出る印刷プレビュー画面は指定の印刷範囲通りなのですが印刷物は全体表示のものになってしまいます。

該当エクセル内に作業用シートもあるのでマクロ使わずにできそうな方法がありましたら教えていただきたいです…。
(さば) 2021/07/02(金) 14:51


>>マクロ実行後プレビューでは
>>ですが、印刷物は

>プレビュー画面どおり印刷されないんですか?
そうみたいですね。

新規ブックでも同じ現象ですか。
(Pre) 2021/07/02(金) 15:25


>新規ブックでも同じ現象ですか
まったく違うエクセルブックで同様のコントロールボタンを挿入し実行したところ
問題なく範囲指定印刷できました。

(さば) 2021/07/02(金) 15:41


 問題のブックで手作業で印刷としたときに印刷時の設定で作業中のシートを印刷、ブック全体を印刷、選択した部分を印刷
 を選択する部分があり、その選択画面で印刷範囲を無視というチェック項目があるがここはどうなっているだろうか?
(ねむねむ) 2021/07/02(金) 15:51

気になっているのは、「印刷プレビュー画面にある印刷ボタンを押した」と
はっきり書かれない点です。
なにか別のマクロなりで印刷した結果を「印刷物」と書いているのでは?

>補足で範囲(あ〜う)は開始行は同じですが、範囲が異なる3データです。
と新しい事実もでてきましたが、
・これらの範囲の切り替えだとか、
・印刷実行に関するマクロの内容が一度も示されていない点です。
なんらかの単純なミスであることが多い気がします。
そうでなければ、ファイルが壊れているか。

でもこちらからはわかりませんから、どうしようもない。
(確認) 2021/07/02(金) 16:06


>印刷範囲を無視というチェック項目があるがここはどうなっているだろうか?
チェックはついていません。
ちなみに選択は[作業中のシートを印刷]になっています。

>印刷プレビュー画面にある印刷ボタンを押した
プレビュー画面のボタンを押しています。
プリントアウトに係るマクロは作成していません。

単純にマクロが不完全なものか印刷設定に原因があるものと思ったのでお伺いしました。
でも別ブックで同様の方法にてできることが分かったで改めて問題のブックを作り直してみたいと思います。
(さば) 2021/07/02(金) 16:17


>でも別ブックで同様の方法にてできることが分かった
今まで質問に使用してきたファイルは壊れているのでしょう?
(Pre) 2021/07/02(金) 16:40

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.