- ベストアンサー
エクセルで質問です
エクセルで特定の行を常にページの最後にプリントアウトすることは可能でしょうか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
印刷範囲がどのようになっていて、特定の行が印刷範囲に対してどの場所にあるか問題ですが、マクロで可能でしょう。 縦方向に何枚にもなるデータを印刷し、各ページの最後に特定の行を印刷する例です。 ●方法1 印刷専用のシートを作り、ページ毎に変わるデータ部分と特定の行を作っておく。 ページ毎に変わるデータ部分については、index関数等で定義可能です。 後はマクロでページを進めて印刷。 ●方法2 データが入力されたシートの最後に特定の行があれば、全データと最後の特定の行を印刷範囲にします。 マクロでページ数分印刷するようにしておき、あるページを印刷する場合は、特定の行以外の印刷範囲のうち、印刷ページでない行を非表示にします。 (特定行以外の印刷範囲を全部非表示にしておき、印刷したい部分を再表示したほうが簡単か) ●方法3 特定の行がどのようなものか分かりませんが、フッタにセル内容をセットして解決するかもしれません。
その他の回答 (2)
- imogasi
- ベストアンサー率27% (4737/17069)
VBAになりますが、下記をやったら、A1セルにセットした「山田太郎」がプレビユー画面のフッター部に出たことを確認いました。追試してください。 A1(どのセルでも良いが、A1とした)に「山田太郎」(なんでも良い)と入力した。エクセルのツール、マクロ、 マクロの記録を使ってページセットアップ,ヘッダー/フッターのフッダーの設定を画面で操作した。 それにより下記を記録した。 ActiveSheet.PageSetup.PrintArea = "" With ActiveSheet.PageSetup .LeftHeader = "" .CenterHeader = "" .RightHeader = "" .LeftFooter = "" .CenterFooter = "&D" & Range("a1") (記録した時は”&D”のみ) .RightFooter = "" (以下一部略) .PaperSize = xlPaperA4 .FirstPageNumber = xlAutomatic .Order = xlDownThenOver .BlackAndWhite = False .Zoom = 100 End With ActiveSheet.PrintPreview End Sub そして .CenterFooter = "&D"の後に「 & Range("a1")」を追加した。”&D”も省いても良いと思う。 そして最後に「 ActiveSheet.PrintPreview」を打ち込んで入れた。 そして実行したら、プレビュー画面の下に日付と「山田太郎」が出た。 A1に他の名前をセットして、このルーチンを実行して、 プレビューで見ると、他の名前に変わっていた。 ヘッダー/フッターのフッダーの情報を設定の操作のとき、シート名やブック名や日付、時刻だけでなく、任意のセルを指定する方法があるのではと疑っているが、わたしには今は判りません。
- yuyama
- ベストアンサー率50% (7/14)
わかりませんが。 「フッター」に記述する方法ではだめでしょうか? ページ番号をふるようにします。 特定文字列や図形も挿入可能です。 複数行も可能です。 ページの先頭にするのであればできますが。 「印刷のページ設定」の「行のタイトル」で 表示したい行を指定できます。