• ベストアンサー

VBA  印刷範囲 設定 EXCEL

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

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

  • ベストアンサー
  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.3

> 列はD列目までです。可能でしょうか? ということは、行は1行目からA列の最終入力行まで、列はA列からD列までの固定ということですね? Sub test02()   ActiveSheet.PageSetup.PrintArea = "$A$1:$D$" & Cells(Rows.Count, "A").End(xlUp).Row End Sub で、いかがでしょう?

gastronome
質問者

お礼

できました? ありがとうございます

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (2)

  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.2

> たとえば、A列を見て3行目までを印刷範囲にするといったかんじです。 わかりません。 印刷範囲は行だけでなく、列も必要です。 行はA列の最終行までとして、列はどこの最終列を指定すればいいのですか?

gastronome
質問者

補足

列はD列目までです。可能でしょうか?

全文を見る
すると、全ての回答が全文表示されます。
  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.1

質問を誤解しているかもしれませんが、仮に参照する列がE列だとすると、 Sub test01() ActiveSheet.PageSetup.PrintArea = "" ActiveSheet.PageSetup.PrintArea = "$A$1:" & Cells(Rows.Count, "E").End(xlUp).Address End Sub でいけると思います。

gastronome
質問者

お礼

すみません表現がおかしかったみたいです。  ABCD 1○× □ 2○×△ 3○ △□ 4 5 たとえば、A列を見て3行目までを印刷範囲にするといったかんじです。 わかりにくくてすみません

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 【Excel】マクロで印刷範囲の設定

    Excel2003を使用しています。 マクロで印刷範囲を設定するコードを書きました。ページを追加するマクロを実行したときに一緒に実行するようにしているのですが、コードで指定している範囲外にデータがあるせいか、その列まで印刷範囲に設定されてしまいます。このデータは印刷範囲には入れたくないのですが、どうしたらいいでしょうか? ちなみに、印刷範囲部分のコードは  .PageSetup.PrintArea = Range(Cells(1, 1), Cells(j, 24)) Y1セルとZ1セルにデータが入力されています。マクロを実行すると、印刷範囲がA1:Zjに設定されます。印刷範囲はX列までに設定したいのですが、可能でしょうか?よろしくお願いします。

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

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

  • エクセルVBAで、ある範囲を印刷範囲に自動設定する方法

    A1・・・・・GR1 までに項目と日にちが入っています。 この下、つまり2行目以下にはところどころデータが入っています。 例えば 2行目以下にデータのある一番右の列がAW列目 2行目以下にデータのある一番下の行が7行目 である場合、印刷範囲をA1:AW7という範囲で印刷設定したいのですが、 まったくわかりません。今まで、サイトを参考にCurrentRegionで印刷 設定を自動でしていたのですが、それでは対応できないようで質問に 参りました。教えてください、よろしくお願いします。

  • 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

  • VBAを使って印刷範囲の設定方法を教えてください

    VBA初心者です。 VBAを使用して、データの印刷範囲設定をしたいのですが、 以下の条件で設定する方法がわかりません。 教えてください。  行: データ全体を印刷範囲とする。  列: データがL列より少ない場合は、L列までを範囲として、     それ以上ある場合はデータ全体を印刷範囲とする。

  • VBA 印刷範囲設定がうまくいかない

    変数cntに値を代入し印刷範囲が変わるという事を、以下のコードで実行しようとしています。 Sub Macro1() cnt = 9 Sheets("A").Activate 範囲 = Sheets("A").Range(Cells(1, 1), Cells(33, cnt + 1)) ActiveSheet.PageSetup.PrintArea = 範囲 上記のコードですと、シート「A」のセルA1~J33までが印刷範囲になると思ったのですが、実行すると全く関係ないセルまで印刷範囲になってしまいます。 「A」シートには罫線やデータが入力されているセルが他にもあり、どうやらそれらのセルも同じく印刷範囲とされてしまっているようなのです。(例えばK列に罫線が引いてあり、セルに色がついているとK列まで印刷範囲になる) Sheets("A").Range(Cells(1, 1), Cells(33, cnt + 1)).select とすれば、望みどおりのセル範囲A1~J33がきちんと選択されるのですが、印刷範囲ではなぜこのようなことになってしまうのでしょうか。

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

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

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

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

  • 印刷範囲の設定で教えてください。

    再三再四で申し訳ございません。 マクロで印刷範囲設定は ActiveSheet.PageSetup.PrintArea = "$B$1:$H65" と範囲を固定するのが一般的と思うのですが、 印刷範囲が利用者毎に相違するため 開始セル値を A8 セルに 最終セル達を A10 に置く形で 印刷範囲を任意変更可能にしたい場合には セル値で印刷範囲設定する方法を お教えくださいますよう 御願いいたします。

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

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

このQ&Aのポイント
  • ハンディプローブ三次元測定機の精度について考えてみましょう。
  • ハンディプローブ三次元測定機を導入する際の注意点について解説します。
  • ハンディプローブ三次元測定機の精度がマイクロメーターやシリンダーゲージと比較してどのように変化するかについて考察してみましょう。
回答を見る

専門家に質問してみよう