目次
このチュートリアルでは、Excelで印刷範囲を手動で選択する方法と、マクロを使用して複数のシートに印刷範囲を設定する方法について説明します。
を打つと プリント ボタンをクリックすると、デフォルトでスプレッドシート全体が印刷され、何ページにもなることがよくあります。 しかし、巨大なワークシートの内容をすべて紙に印刷する必要がない場合はどうでしょうか。 幸いにも、Excelには印刷する部分を定義する機能があります。 この機能は プリントエリア .
エクセル印刷領域
A 印刷領域 は、最終的な印刷に含めるセルの範囲です。 スプレッドシート全体を印刷したくない場合は、選択範囲のみを含む印刷領域を設定します。
Ctrl + Pを押したとき、または プリント ボタンを押すと、その領域だけが印刷されます。
1つのワークシートで複数の印刷領域を選択すると、それぞれの領域が別のページに印刷されます。 ワークブックを保存すると印刷領域も保存されます。 後で気が変わったときは、印刷領域を消去したり変更したりすることができます。
印刷領域を設定することで、各ページの印刷状態をより細かく制御することができます。 特に、ワークシートが使用する用紙より大きい場合は、印刷領域を設定しないと、重要な行や列が切り取られた、乱雑で読みにくいページになってしまう可能性があります。
Excelで印刷領域を設定する方法
印刷物でデータのどの部分を表示するかをExcelに指示するには、以下の方法のいずれかを実行します。
Excelで印刷領域を設定する最速の方法
印刷範囲を一定にする一番手っ取り早い方法はこれです。
- ワークシートの印刷したい部分を選択します。
- について ページレイアウト タブで ページ設定 グループをクリックします。 プリントエリア > 印刷領域を設定する .
印刷領域を示すかすかなグレーの線が表示されます。
Excelで印刷領域を定義するためのより有益な方法
すべての設定を視覚的に確認したい場合は、印刷領域を定義する、より透明性の高い方法を紹介します。
- について ページレイアウト タブで ページ設定 グループで、ダイアログランチャーをクリックします。 が表示されます。 ページ設定 のダイアログボックスが表示されます。
- について シート タブで、カーソルを 印刷領域 フィールドで、ワークシート内の1つまたは複数の範囲を選択します。 複数の範囲を選択する場合は、Ctrlキーを押したままにしてください。
- クリック よっしゃー .
ヒントと注意点
- ワークブックを保存すると、印刷領域も セーブ ワークシートをプリンターに送ると、必ずその部分だけが印刷されます。
- 定義された領域が本当に必要な領域であることを確認するには、Ctrl + Pを押して、各領域を調べます。 ページプレビュー .
- 印刷範囲を設定せずに、データの一部をすばやく印刷するには、印刷したい範囲を選択し、Ctrl + P を押しながら プリント選択 の下にあるドロップダウン・リストで 設定 詳しくは、「選択範囲、シート、ワークブック全体を印刷する方法」をご覧ください。
Excelで複数の印刷領域を設定する方法
ワークシートの数カ所を印刷する場合は、このように複数の印刷領域を選択することができます。
- 最初の範囲を選択し、Ctrlキーを押しながら、他の範囲を選択します。
- について ページレイアウト タブで ページ設定 グループをクリックします。 プリントエリア > 印刷領域を設定する .
完了!複数の印刷領域が作成され、それぞれがページを表します。
注意:これは、以下の場合のみ有効です。 非連続 隣接する範囲は、別々に選択した場合でも、1つの印刷領域に含まれます。
Excelで印刷領域を強制的に無視させる方法
シート全体やワークブック全体をハードコピーしたいが、すべての印刷領域を消去するのは面倒な場合、Excelに無視するように指示すればよいのです。
- クリック ファイル > プリント または Ctrl + P を押してください。
- アンダー 設定 の横の矢印をクリックします。 アクティブシートの印刷 を選択し 印刷領域を無視する .
複数のエリアを1ページに印刷する方法
1枚の用紙に複数の領域を印刷する機能は、Excelではなくプリンタのモデルによって制御されています。 このオプションが使用可能かどうかを確認するには、Ctrl + P キーを押しながら、次のようにクリックします。 プリンタープロパティ のリンクをクリックし、利用可能なタブを切り替えてください。 プリンタープロパティ を検索するダイアログボックスが表示されます。 1枚あたりのページ数 オプションを使用します。
もし、お使いのプリンターにそのようなオプションがあれば、ラッキーですね :) そのようなオプションがない場合、私が思いつく唯一の方法は、印刷範囲を新しいシートにコピーすることです。 特殊貼り付け機能を使えば、この方法でコピーした範囲を元のデータにリンクさせることができます。
- 最初の印刷領域を選択し、Ctrl + Cキーでコピーします。
- 新しいシートで、任意の空白のセルを右クリックし、以下を選択します。 ペースト・スペシャル > リンク画像 .
- 他の印刷領域についても、手順1と2を繰り返します。
- 新しいシートで、Ctrl + P を押すと、コピーしたすべての印刷領域が1ページに印刷されます。
VBAでExcelの印刷領域を複数シートに設定する方法
全く同じ構造のワークシートがたくさんある場合、当然ながら同じ怒りを紙に出力したいと思うでしょう。 問題は、複数のシートを選択すると プリントエリア 同じ範囲を複数枚で印刷する方法」で説明しているように、簡単に回避することができます。
定期的に同じ範囲を複数枚に印刷する必要がある場合、VBAを使用することでスピードアップを図ることができます。
選択したシートの印刷領域をアクティブシートの印刷領域として設定する
選択されたすべてのワークシートの印刷領域を、アクティブシートと同じにするマクロです。 複数のシートを選択している場合、マクロを実行したときに表示されているシートがアクティブシートとなります。
Sub SetPrintAreaSelectedSheets() Dim CurrentPrintArea As String Dim Sheet As Worksheet CurrentPrintArea = ActiveSheet.PageSetup.PrintArea For Each Sheet In ActiveWindow.SelectedSheets Sheet.PageSetup.PrintArea = CurrentPrintArea span>次 End Subすべてのワークシートの印刷範囲をアクティブシートに設定する
シートの枚数に関係なく、ワークブック全体の印刷範囲を一度に定義します。 アクティブシートに印刷したい範囲を設定して、マクロを実行するだけです。
Sub SetPrintAreaAllSheets() Dim CurrentPrintArea As String Dim Sheet As Worksheet CurrentPrintArea = ActiveSheet.PageSetup.PrintArea For Each Sheet In ActiveWorkbook.Sheets If Sheet.Name ActiveSheet.Name Then Sheet.PageSetup.PrintArea = CurrentPrintArea End If Next End Sub指定した印刷領域を複数枚で設定する
異なるワークブックで作業する場合、マクロで範囲を選択するように促されると便利です。
対象となるワークシートをすべて選択し、マクロを実行、プロンプトが表示されたら1つ以上の範囲を選択し(複数の範囲を選択するにはCtrlキーを押したまま)、クリックする、というものです。 よっしゃー .
Sub SetPrintAreaMultipleSheets() Dim SelectedPrintAreaRange As Range Dim SelectedPrintAreaRangeAddress As String Dim Sheet As Worksheet On Error Resume Next Set SelectedPrintAreaRange = Application.InputBox("Please select print area range" , "Set Print Area in Multiple Sheets" , Type :=8) If Not SelectedPrintAreaRange Is Nothing Then SelectedPrintAreaRangeAddress = (印刷範囲指定アドレスがない場合。SelectedPrintAreaRange.Address( True , True , xlA1, False ) For Each Sheet In ActiveWindow.SelectedSheets Sheet.PageSetup.PrintArea = SelectedPrintAreaRangeAddress Next End If Set SelectedPrintAreaRange = Nothing End Subマクロの使用方法
最も簡単な方法は、印刷領域マクロのサンプルワークブックをダウンロードし、そのワークブックから直接マクロを実行することです。 その方法は次のとおりです。
- ダウンロードしたワークブックを開き、プロンプトが表示されたらマクロを有効にします。
- 自分のワークブックを開く。
- ワークブックで、Alt + F8 を押し、目的のマクロを選択し、クリックします。 実行 .
サンプルワークブックには、以下のマクロが含まれています。
- SetPrintAreaSelectedSheets(印刷領域選択シート)。 - 選択されたシートの印刷領域をアクティブシートに設定します。
- SetPrintAreaAllSheets(プリントエリアオールシート)。 - 現在のワークブックのすべてのシートの印刷領域を、アクティブシートに設定します。
- SetPrintAreaMultipleSheets(印刷領域複数シート)。 - 選択されたすべてのワークシートに、指定された印刷領域を設定します。
または、ファイルをマクロ対応ワークブック(.xlsm)として保存し、そこにマクロを追加することもできます。 詳しい手順については、「ExcelでVBAコードを挿入して実行する方法」をご覧ください。
Excelで印刷領域を変更する方法
誤って無関係なデータを入れてしまったり、重要なセルを選択し損ねたりしても大丈夫。 Excelで印刷領域を編集する簡単な方法が3つあります。
Excelで印刷領域を拡大する方法
既存の印刷領域にさらにセルを追加するには、次のようにすればよい。
- 追加したいセルを選択します。
- について ページレイアウト タブで ページ設定 グループをクリックします。 プリントエリア > 印刷領域に追加する .
完了!
この方法は、もちろん印刷領域を変更する最も早い方法ですが、透明ではありません。 これを正しく行うには、次のようないくつかの重要な点があります。
- があります。 印刷領域に追加する オプションは、ワークシートに少なくとも1つの印刷領域が既にある場合にのみ表示されます。
- 追加するセルが 隣接しない を既存の印刷領域に追加すると、新しい印刷領域が作成され、別のページとして印刷されます。
- もし、新しいセルが アジェイサント を既存の印刷領域に追加すると、同じ領域に含まれ、同じページに印刷されます。
名前マネージャを使用してExcelの印刷領域を編集する
Excelで印刷領域を設定するたびに、定義された範囲である名前 印刷領域 が作成され、その範囲を直接変更することを妨げるものは何もありません。 以下、その方法について説明します。
- について 計算式 タブで 定義された名前 グループをクリックします。 名 称 マネージャー または、Ctrl + F3 のショートカットキーを押してください。
- での 名 称 マネージャー ダイアログボックスで、変更したい範囲を選択し 編集 ボタンをクリックします。
ページ設定ダイアログボックスで印刷領域を変更する
Excelで印刷領域を調整するもう一つの手っ取り早い方法は ページ設定 この方法の最大の特徴は、印刷領域の修正、削除、新規追加など、好きなように変更できることです。
- について ページレイアウト タブで ページ設定 グループで、ダイアログランチャー(右下にある小さな矢印)をクリックします。
- について シート のタブをクリックします。 ページ設定 のダイアログボックスが表示されます。 印刷領域 ボックスで、その場で編集を行うことができます。
- への モディファイ を削除し、正しいリファレンスを手入力します。
- への 取り替える にカーソルを合わせると、既存のエリアが表示されます。 印刷領域 をクリックし、シート上の新しい範囲を選択すると、既存の印刷領域がすべて削除され、選択した領域のみが設定されます。
- への つける の場合、Ctrlキーを押しながら新しい範囲を選択すると、既存の印刷範囲に加えて新しい印刷範囲が設定されます。
Excelで印刷領域をクリアする方法
印刷領域のクリアは、設定するのと同じくらい簡単です :)
- 目的のワークシートを開きます。
- に切り替えてください。 ページレイアウト tab> ページ設定 グループをクリックし クリアプリントエリア ボタンをクリックします。
注)ワークシートに複数の印刷領域がある場合、すべての印刷領域が削除されます。
Excelで印刷領域をロックする方法
ワークブックを他の人と頻繁に共有する場合、印刷領域を保護し、印刷物を台無しにされないようにしたい場合があります。 残念ながら、ワークシートやワークブックを保護しても、Excelで印刷領域をロックする直接的な方法は存在しません。
Excelで印刷領域を保護する唯一の方法は、VBAを使用することです。 このためには、VBAに ワークブック_印刷前 印刷直前に指定された印刷領域を無言で強制するイベントハンドラです。
より簡単な方法は、イベントハンドラを アクティブシート が、これには以下のような注意点があります。
- すべてのワークシートに同じプリントレイジ(複数可)があるはずです。
- 印刷する前に、対象シートのタブをすべて選択する必要があります。
シートによって構造が異なる場合は、印刷範囲を指定して 一枚一枚 .
Private Sub Workbook_BeforePrint(Cancel As Boolean ) Worksheets( "Sheet1" ).PageSetup.PrintArea = "A1:D10" Worksheets( "Sheet2" ).PageSetup.PrintArea = "A1:F10" End Sub上記のマクロは、印刷領域をA1:D10に設定し シート1 についてはA1:F10へ。 シート2 これらは自由に変更でき、またシートを追加することも可能です。
ワークブックにイベントハンドラを追加するには、次の手順を実行します。
- Alt + F11 を押すと、以下の画面が表示されます。 Visual Basic エディター .
- 左側のプロジェクトエクスプローラーウィンドウで、対象のワークブックのノードを展開し、ダブルクリックで 本作品 .
- で このワークブックコード ウィンドウに、コードを貼り付けてください。
注意:この方法を使うには、ファイルをマクロが有効なワークブック(.xlsm)として保存し、ワークブックを開くときにマクロが有効になるようにする必要があります。
Excelの印刷領域の問題
Excelの印刷に関する問題の多くは、印刷領域ではなくプリンタの設定に関連しています。 しかし、以下のトラブルシューティングは、Excelが正しいデータを印刷しない場合に役立つ可能性があります。
Excelで印刷領域を設定できない
問題点 : 定義した印刷領域をExcelに受け入れてもらうことはできません。 プリントエリア フィールドには奇妙な範囲が表示されますが、入力された範囲ではありません。
解決方法 印刷領域を完全に消去してから、新たに選択してみてください。
すべての列が印刷されるわけではありません
問題点 : 印刷領域で一定の列数を選択したが、すべての列が印刷されない。
解決方法 余白を狭くするか、スケーリングを調整してください。 すべての列を1ページに収める .
印刷領域が複数ページに渡って印刷される
問題点 : 1ページで印刷したいのに、数ページに渡って印刷される。
解決策 隣接しない範囲を選択した場合、複数ページに分割して印刷されるのは、用紙サイズより大きい可能性があります。 この場合、すべての余白を0に近づけるか、または、次のオプションを選択してください。 フィットシートは1ページで。 詳しくは、「Excelのスプレッドシートを1ページに印刷する方法」をご覧ください。
以上、エクセルでの印刷領域の設定、変更、クリアの方法でした。 読んでいただきありがとうございました!また来週のブログでお会いしましょう