• ベストアンサー

エクセルの印刷範囲について

エクセルの印刷について質問です。 B列に1~4000までの数字が入っているのですが、その中で1~1000、1001~2000、2001~3000、3001~4000までの行を、P列まで、と区切って印刷するのに、毎回手作業で印刷範囲を設定して印刷しています。 マクロなどを組むことで自動かする方法はないかと思い質問させていただきました。 どなたかアドバイスいただけないでしょうか??

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

  • ベストアンサー
  • qwe2010
  • ベストアンサー率19% (2125/10785)
回答No.1

別のシートに、1~1000、1001~2000と、 コピー、形式を選択して貼り付け、リンク貼り付け、をして、シートごとに印刷すればよいでしょう。 全てのシートを選ぶ場合は、Shiftを押したままシートを選択して、印刷すれば1回の操作で済みます。 飛び飛びの場合は、Ctriを押して印刷するシートを選んでください。 印刷範囲ですが、右クリックで、範囲を選び、表示しないにすると、表示をしているところだけが印刷されます。

その他の回答 (1)

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.2

こんばんは! 1行目は項目行でデータは2行目以降にあり、1~4000までの数値がB列にあるとします。 コツコツ手作業でやる場合は まずA~P列全体を「印刷範囲」に設定しておきます。 次にB列でオートフィルタを掛ける → 「数値フィルタ」 → 「指定の範囲内」 → 「1」以上 かつ 「1000」以下 としてOK これで印刷すれば 1~1000 のデータが印刷されます。 同様に「1001」以上「2000」以下・・・と4000まで行います。 どうしてもVBAというコトであれば一例です。 シートモジュールにしてください。 Sub Sample1() Dim i As Long, lastRow As Long With ActiveSheet lastRow = .Cells(Rows.Count, "B").End(xlUp).Row For i = 1 To 4 .Range("A1").AutoFilter field:=2, Criteria1:=">=" & (i - 1) * 1000 + 1, _ Operator:=xlAnd, Criteria2:="<=" & i * 1000 .PageSetup.PrintArea = Range(.Cells(2, "A"), .Cells(lastRow, "P")).SpecialCells(xlCellTypeVisible).Address .PrintPreview '←印刷プレビューだけにしています。★ .PageSetup.PrintArea = "" Next i .AutoFilterMode = False End With End Sub ※ 「★」印の行を見てもらえばわかると思いますが、 「印刷プレビュー」でやめています。m(_ _)m

関連するQ&A

  • エクセルの印刷範囲について

    エクセル2010を使用しています。 毎日配送表を印刷しているのですが、印刷範囲を一定のルールに基づいて変えているのですが、マクロなどにより自動化できないかと思い質問させていただきました。 条件は下記の通りです。 (1)印刷範囲はA列からQ列まで (2)行は日によって変化する (3)B列には1~5999までの数字が打ち込まれており、日によって「3999」まで「4999」までと変動あり (4)変動する最後の数字の行まで、A~Q列全てに情報が打ち込まれているが、それ以降の行、列ともに空白の状態 個人的にはB列の数字を基準として「B列が<5999」までの範囲を「A~Q列まで」選択 といったようにできればイメージに近いものになるのかなぁと思っていますが、力不足でどうすればよいのか分かりません。 どなたか助けていただけないでしょうか??

  • エクセル、変動する印刷範囲の設定

    変動するデータを自動的に範囲設定して印刷したいです。 エクセル2007を使用しています。 sheet1を元データとして、sheet2で元データの必要項目だけ選んで表を作成しています。 sheet2は5000行×15列の表で罫線も引いてます。 元データは毎回変動するので、データの入っているところだけ自動的に印刷できるようにしたいです。 行数が毎回変動します。列は15列で固定ですが、印刷は12列迄で固定です。 すいませんが、教えてください。

  • エクセル 名前定義の範囲について

    エクセル 名前定義の範囲について質問です。 始まり・終わりの行を示す特定の文字列を設定し、 それを元に自動で範囲の行数を変化させるようなことはできませんでしょうか。 例)A列に、行範囲を示す文字列を記述。  B列以降が実際の範囲となる。  A 1 この行から 2  3  4  5  6 この行まで 7 というように記述されていた場合、 「この行から」「この行まで」という文字列の位置を元に、 名前定義の範囲が自動で「B1:C6」となるような方法を探しています。 「この行から」の位置をA3に変更した場合、 名前定義された範囲も、自動で「B3:C6」に変化して欲しいのです。 ただし、文字列を元に変化するのは行だけで、列の範囲は固定で構いません。 極力マクロを使用しない方法で、有効なものがございましたら ご指導のほどよろしくお願いします。

  • EXCELの印刷範囲のクリアについて

    Excel2007です。よろしくお願いします。 最終的には、別シートを作り直して解決はしたのですが、 方法が分からずすっきりしないため、今後のためにも知っておきたく、 こちらに質問させていただきました。 いただいたEXCELファイルでのことなのですが、 例えば、現在、A1~G10まで何らかの情報が入力されている状態で、 行数は今後増えていくことを想定しB~Fまでを印刷範囲としました。 AとGの列は、データは入力されていますが、印刷はさせたくない部分とします。 印刷プレビュー画面で参照すると、 本来であればB1~F10までが印刷範囲として表示されるはずと思いますが、 なぜかB1~F70、と、行が70列まで範囲状態となってしまいます。 本来1ページで済むはずが、2ページにわたって印刷範囲となっています。 B1~F10を範囲指定すると正常に指定されるのですが、 データが増えることを考えると、列での設定をしたいと思っています。 印刷範囲をクリアし、再度B~Fを印刷範囲設定したのですが、 何度行っても70行まで設定されてしまいます。 何か変なデータが設定されているのかと思い、 11行目~70行目までを削除しても、治りません。 また逆に、60行目あたりで行の追加をすると、印刷範囲はB1~F71、のように 増えていきました。 ですが、行を削除しても範囲は減りません。 ですので、増えた分は増えっぱなしです。 確認した点は、以下です。 ・VBAで設定されているか?⇒「PrintArea」で検索したが、設定なし。 ・名前の管理⇒$B:$F の設定のみで、他の設定はなし どのようにすれば、印刷範囲で行が固定されている部分を解除できますでしょうか? お手数をおかけいたしますが、よろしくお願いいたします。

  • エクセル 特定の文字列から範囲を指定

    エクセル 名前定義の範囲について質問です。 始まり・終わりの行・列を示す特定の文字列を設定し、 それを元に自動で範囲を変化させるようなことはできませんでしょうか。 例えば、 B1:列ここから D1:列ここまで A3:行ここから A6:行ここまで と書かれていた場合、 名前定義の範囲が自動で「B3:D6」となるような方法を探しています。 なお、 ・列を指定する文字列は必ず1行目に ・行を指定する文字列は必ずA列目に あるという想定です。 極力マクロを使用しない方法で、有効なものがございましたら ご指導のほどよろしくお願いします。

  • VBA  印刷範囲 設定 EXCEL

    列を参照して、その列にデータが入っている最後のセルを含む印刷範囲を自動で設定できるマクロを作りたいと思っています。質問で検索していましたが、これといったものが見つからず、誰か教えてください。

  • Excel Vba でデータの範囲を知るには?

    Excelを使用していますが、マクロ(VBA)で、シートのデータの範囲を知るにはどうすればよいのでしょうか。  印刷プレビューを行うと、自動的にページ数が求めらていますが、これは、シートのデータの範囲(列及び行の最大値)を判別しているからできるのだと思います。  これを、VBAで行、及び列のMAX値を取得したいのですが、そのメソッド(プロパティ)を知りたいのです。  どなたかご教授ください。

  • EXCEL マクロで変化する印刷範囲を設定したい

    複数年分集計したEXCELの表の中からある年(度)のデータをマクロで印刷範囲を設定したい!です。 ・EXCELのシートはA~AK列までのデータです。 ・A4~AK8までが「タイトル行」です。 ・A1列に「2014/7/1」等といった日付のデータが入っています。 ・上記「タイトル行」とある年(度)のデータをマクロで自動に選択して  印刷範囲を設定したいです。下記は、2014年のデータを印刷範囲とした  マクロです。どの部分を修正すればある年のデータを抽出するマクロに  できるでしょうか?教えてください。宜しくお願いします。 Sub 印刷範囲() ' ' 印刷範囲 Macro ' 印刷範囲を指定する ' ' Range("A4:AK8").Select ActiveSheet.PageSetup.PrintArea = "$A$4:$AK$8" ActiveWindow.ScrollColumn = 38 ActiveWindow.ScrollColumn = 2 ActiveWindow.SmallScroll Down:=-39 Range("A170:AK220").Select ActiveSheet.PageSetup.PrintArea = "$A$4:$AK$8,$A$170:$AK$220" Range("U208").Select End Sub

  • エクセル2007の印刷範囲の設定について

    添付画像の表をA4の縦長のスタイルで プリントアウトしたいと考えて、以下の作業を行いました。 (1)ページレイアウト→印刷範囲→印刷範囲のクリア (2)A列からD列までの任意の行を範囲選択 (3)印刷範囲の設定 ところが印刷プレビューを見てみると、 1枚目はA,B列、2枚目はC列、3枚目はD列のみ と3枚バラバラに表示されます。 また画像では分かりにくいかもしれませんが、 D列右罫線には印刷範囲の設定の破線が表示されて いるにもかかわらず、C列の左右の罫線には 点線が表示されています。 C列の左右の罫線に点線が表示されていることが 何か怪しいと思いますが、何をどうすれば良いのか分かりません。 この状態で表をA4の縦長のスタイルでA列からD列までの 範囲を印刷できる状態にする方法をご存じの方ご教示願います。

  • Excel97 印刷範囲の設定

    ある大きな表を作っており、3行目に表の項目があります。 この項目にオートフィルタを設定し、データを振り分けたものを何回か印刷するという ことをしています。 このとき、1行目と2行目は印刷したくなく、今は毎回印刷範囲を指定しているのですが、 1行目と2行目のセルを「表示しない」に設定する以外で、簡単に行える方法はないでしょうか。 ※印刷範囲設定で、開始行は3行目でいいのですが、終了行が毎回違うため、その都度 印刷範囲を設定しなければいけないのが、煩わしいので。

専門家に質問してみよう