• ベストアンサー

エクセルで拡大して1枚に印刷は?

tsubu-yukiの回答

回答No.7

力業がお嫌いじゃなければ、 Select~Case 一杯で頑張れます。 下記だととりあえずプレビューします。 Dim P_Area As Range Dim P_Width As Double, P_Height As Double Dim P_Size_L As Double, P_Size_S As Double Dim X_Margin As Double, Y_Margin As Double   With ActiveSheet.PageSetup     Set P_Area = Range(.PrintArea)       P_Width = P_Area.Width: P_Height = P_Area.Height     Select Case .PaperSize       Case 8         Select Case .Orientation           Case 1             P_Size_L = Application.CentimetersToPoints(29.7)             P_Size_S = Application.CentimetersToPoints(42)           Case 2             P_Size_L = Application.CentimetersToPoints(42)             P_Size_S = Application.CentimetersToPoints(29.7)           End Select       Case 9           Select Case .Orientation             Case 1               P_Size_L = Application.CentimetersToPoints(21)               P_Size_S = Application.CentimetersToPoints(29.7)             Case 2               P_Size_L = Application.CentimetersToPoints(29.7)               P_Size_S = Application.CentimetersToPoints(21)           End Select       Case Else         Exit Sub     End Select     X_Margin = .LeftMargin + .RightMargin: Y_Margin = .TopMargin + .BottomMargin     Select Case (P_Size_L - X_Margin) / P_Width > (P_Size_S - Y_Margin) / P_Height       Case True         .Zoom = (P_Size_S - Y_Margin) / P_Height * 100       Case False         .Zoom = (P_Size_L - X_Margin) / P_Width * 100     End Select   End With   ActiveSheet.PrintOut Preview:=True 現状、A3とA4しか考えていません。 印刷範囲・用紙サイズ・用紙の向きが設定してあるのが条件です。 ご承知の通り、400%を超える倍率はエクセルの能力上、不可能です。 そのエラー処理は面倒なのでしていないです。

emaxemax
質問者

お礼

これすごいですね!! 瞬時にできてしまいます。 この方法で行きたいと思います。 ありがとうございました。

emaxemax
質問者

補足

すみません、この方法は非常に早くて素晴らしいのですが、おなじページを Sub MyPrint33() Dim myZoom As Long With ActiveSheet.PageSetup For myZoom = 100 To 400 Step 20 .Zoom = myZoom Application.StatusBar = myZoom DoEvents If .Pages.Count = 2 Then Exit For Next For myZoom = myZoom To myZoom - 20 Step -1 .Zoom = myZoom Application.StatusBar = myZoom DoEvents If .Pages.Count = 1 Then Exit For Next End With ActiveSheet.PrintOut Preview:=True End Sub でやったものと拡大率が異なり、小さくなってしまいます。 Sub MyPrint33でやると308%でちょうどよいのですが、これが284%になり、かなり違いがあります。なぜでしょう?

関連するQ&A

  • エクセルで拡大して1枚に印刷したい

    エクセル2010です。 シートの印刷範囲を自動縮小してA4一枚にはみ出さないように印刷する方法はわかります。 逆に、そのまま印刷すると小さい印刷範囲を自動拡大してA4一枚にはみ出さないように印刷する方法はないでしょうか? もちろん拡大率を手動で設定することはできますが、プリンターによって余白が異なるようであらかじめ拡大率を手動で設定してしまうとはみ出る場合があり、自動拡大して一枚に収める技を探しています。

  • エクセル、拡大印刷のやりかた

    エクセルについての質問です。 作成した表を作って、それをA4用紙にめいっぱい 大きく印刷したいのです。 自分では、印刷設定で縮小/拡大を変えるしか方法しかわかりません。 表がA4サイズよりも大きく作ってあれば「次のページ数にあわせて印刷:横1枚×縦1枚」から自動縮小できますが、A4よりも小さい場合の、ページサイズいっぱいまでの「自動拡大」の方法はありますか? よろしくお願い致します。

  • エクセルで…小さい文書を用紙一杯に拡大印刷したい

    ◆エクセルで小さな文書を作りました。が、…印刷したときあまりにも見栄えが悪い為、用紙一杯に拡大して印刷したいのです… (縮小印刷の方法はわかります。縮小のように縦横比をキープしたまま用紙一杯に拡大して印刷する方法を調べたのですが…解決に至っておりません) ◆エクセルXP・2000、いずれも使える環境にあります。 ◆よろしくお願いいたします。

  • エクセル作成文の拡大縮小印刷

    例えばA4に書いている予定でエクセルでの作成文が(見た目や、ページプレビューでは1ページに入っており、「ページ設定の拡大縮小」で100%に指定しています)印刷すると小さくなっています。ページ設定の拡大縮小印刷の指定パーセントは自動的に縮小になっています。これを変化させず指定どおりのパーセントで印刷できないでしょうか?100%で1ページに収まらないとわかれば手の打ちようがあるのですが、見た目は収まっていて印刷すると小さいというので困っています。よろしくご指導お願いします。

  • エクセルの拡大縮小印刷の自動設定について

    エクセル2000です。 大きな表を自動的に縮小印刷するため、「ページ設定」の「拡大縮小印刷」の機能をよく使います。 たとえば列は若干はみ出る程度ですが行数が多く、縦に極端に長い表の場合、余白を目いっぱいとったのち、「印刷の向き」を「横」にし、「拡大縮小印刷」で横1×縦1000ページを設定すると、自動的に縮小率が計算され、何十ページかの表になります。 ところが、今回、列はAからSまでですが行数が4000を超える非常に大きなシートでこれをやったところ、縮小率が正しく計算されません。 いくつか試しましたが手動で設定すると80%程度になるはずのものが、極端に小さくなってしまうのです。 いろいろやってみたら、FontがMS UI Gothic サイズ10(行高12)の場合、3929行までのシートは正しく設定されますが、これより1行でも多いと一律10%になってしまうことがわかりました。 行高が大きいともっと少ない行数でそうなるようです。 これはエクセルの、「拡大縮小印刷」機能の限界なのでしょうか?それとも何かやり方があるのでしょうか?

  • エクセルにおける画面の拡大

    エクセル2007を使用しているのですが,ctrlキーを押しながらマウスホイールを回転させても画面の拡大・縮小ができません. なにか,設定が必要なのでしょうか? Excelのオプション>詳細設定>ホイールで倍率を変更する では,拡大縮小は可能になったのですが,Ctrlキーを押しながらマウスホイールを回転させることでスクロールがが可能でした. マウスホイール回転でスクロール マウスホイール回転+Ctrlキーで画面の拡大・縮小 にはどのように設定すればよいのでしょうか? よろしくお願いします.

  • 拡大はできないのでしょうか?(エクセルページ設定)

    こんにちは。 エクセルのページ設定について 質問させてください! ページ設定内の拡大縮小印刷 についてなのですが、 「A41ページにおさめたかったが、 はみ出てしまった」というときに 縦1×横1に設定しよく利用しています。 しかしその逆でA41ページで作成したものを 指定枚数に印刷されるよう拡大することって 出来るのでしょうか? 試してみたのですがどうもうまくいきません。 ポスター印刷みたいになるのかなと 思っていたので意外でした・・・。 試した事のある方がいらっしゃいましたら 是非アドバイス下さい! バージョンはOFFICE2002を使用しています。 どうぞよろしくお願いします。

  • エクセルで用紙サイズに合わせて表を縮小・拡大するには

    ワードでは印刷のダイアログボックスで、拡大・縮小の所で用紙サイズを指定すると、そのサイズに合わせて拡大・縮小できますが、エクセルでは、作成した表をその用紙のサイズに合わせて、拡大・縮小することはできるでしょうか? ページ設定で、拡大・縮小印刷 で、何%と適当にプレビューを見ながら行う以外に、自動で用紙サイズに合わせて大きさ変えられますか? 教えてください。

  • エクセル2002での拡大縮小印刷ができなくなりました

    ページ設定で、拡大縮小印刷の1ページに収めるをチェックしても、用紙サイズをB4からA4に縮小すると、うまく1ページに縮小できなくなりました。以前はきちんと動作していたのですが、最近おかしな動きになってとても困っています。改善方法を教えてください。

  • 拡大印刷

    拡大/縮小印刷で拡大を選択任意倍率120%で設定 印刷をしましたが1枚しか印刷されません 全体を印刷したいのですが設定方法を教えてください EPSON PX-404A ※OKWaveより補足:「EPSON社製品」についての質問です。