
No.1ベストアンサー
- 回答日時:
これはマクロを使わないとできませんね。
Alt+F11でVBAの画面を開き、左側のThisWorkBookというところをダブルクリックしてください。
右側の画面に以下のマクロをコピーして貼りつけてください。
Private Sub Workbook_BeforePrint(Cancel As Boolean)
With ActiveSheet
.PageSetup.LeftHeader = .Range("A1").Text
End With
End Sub
この例では左のヘッダーにセルA1の内容をセットしています。
マクロ中のセル番地はA1でなく実際のセルに置きかえてください。
また、LeftHeaderの部分も以下にしたがって適切なものに置きかえてください。
左ヘッダー LeftHeader
中ヘッダー CenterHeader
右ヘッダー RightHeader
左フッター LeftFooter
中フッター CenterFooter
右フッター RightFooter
マクロを記述したらその画面は閉じてしまってかまいません。
これで印刷時(または印刷プレビュー時)に、ヘッダーやフッターに指定したセルの内容が反映されます。
なお、マクロを設定した後、一度保存してExcelを終了し、もう一度ブックを開き直さないとマクロが有効にならないかもしれません。(なぜだかわからないですが、私が試したらそういう現象が起きたので、念のため)
この回答への補足
早速試しました。
右フッターに印字を指定し、きちんと印字されたのですが
ページ上部分の印字が、一部前ページの内容を表示したり
一部の枠が表示されなくなってしまいました。
どのように解消したらよいのでしょうか?
No.5
- 回答日時:
すみません、書き忘れがありました。
> 一部の枠が表示されなくなってしまいました。
申し訳ありませんが、これについてはちょっとわかりません。マクロの中ではヘッダーの設定をしているだけで、表自体は何もいじってないので…。
No.4
- 回答日時:
No1,3です。
補足拝見しました。> 同じシートでデータが長いため、改ページしています。
ということは、同じシート内で違うページの場合、違う値をヘッダーに表示したいということでしょうか。
そうだとすると、私のやり方ではうまくいきません。
質問文では、
> ヘッダー又はフッターに日時やファイル名・シート名は指定出来ますが、
> そのシートのセルに入力されている内容を指定することは出来ますか?
とあるので、印刷時にヘッダーに特定セルの内容をヘッダーにセットするようにしました。したがって、そのときそのセルに入っていた内容がヘッダーに表示され、それは同じシートなら、どうしてもどのページでも同じ文字列が入ってしまいます。(セルに数式が入っていたとしても、その値がヘッダーにセットされます)
同じシート内で印刷ページごとにヘッダーの内容を変える方法は、標準の印刷機能を使う限り、標準機能である「ページ数」などで指定する以外の方法は、申し訳ないですが私にはわかりません。ページごとにヘッダーに設定するセルを変えるのもマクロでは無理です。(というか、できるのかもしれませんが、私にはわかりません)
絶対にできないというわけではなく、印刷機能自体をマクロに作り込むことで実現可能だとは思いますが、ちょっと大変です。(ページ数を計算し、1ページごとにヘッダを設定して1ページごと印刷するマクロを組めばいいのですが…)
具体的にどういうことがやりたいか(ページごとに何をヘッダーにセットすればいいのか)補足していただけると、チャレンジしてみますが、ちょっとお時間をいただくかもしれません。
この回答への補足
ham_kamo様
本当に丁寧に教えて頂きまして、感謝しております。
シート内容が多いためページ数が増えてしまい、
対象名称を最初のページにしか入力していないため
2ページ以降の対象がわからなくなっていました。
シート自体は個別には保存せず、仮にAを記入し印刷後は
Bを記入、そしてC、、、というように都度打ち返るため
フッターで対象名称を確認する必要がありました。
ですので、シート内の各ページではなく、シート全てに同じ内容が
印刷できるといいため、教えて頂いた方法で問題ないと思います。
しかし、その後に行挿入や行削除を行い、項目を変更したところ
同じシート内の前ページの終わりの一部分(0.2行分くらい?)が
次のページに表示されるようになってしまいました。
枠に関しても、おそらくページ設定がずれたためかもしれないので
ページ設定の余白を修正して確認してみます。
エクセルがよくわからないので、ham_kamo様に何度もご迷惑をおかけして申し訳ありません。
No.3
- 回答日時:
No.1です。
補足拝見しました。> ページ上部分の印字が、一部前ページの内容を表示したり
とありますが、「前ページ」というのは「前シート」ということなのでしょうか?複数のシートをまとめて印刷しているのだとすると、No.1で回答したマクロでは不備があるので、以下のマクロに置きかえてください。("A1"は実際のセル番地に変えてください)
Private Sub Workbook_BeforePrint(Cancel As Boolean)
Dim W As Worksheet
For Each W In Worksheets
W.PageSetup.RightHeader = W.Range("A1").Text
Next
End Sub
それから、
> 一部の枠が表示されなくなってしまいました。
というのがよくわかりません。どこの枠が表示されなくなったのでしょうか?シート内のセルでしょうか。それともヘッダーに枠をつけているのでしょうか?(私が使用しているExcel2000にはそのような機能がないのでちょっとわからないのですが)
この点を補足していただけますか?
この回答への補足
いつもすばやいご回答ありがとうございます。
説明不足で申し訳ありません。
同じシートでデータが長いため、改ページしています。
枠は、結合したセルに枠をつけています。
宜しくお願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルのフッタやヘッダーについて 3 2023/02/04 09:45
- Excel(エクセル) 【エクセル】文中に別シートのセルの内容を自動入力したい 6 2022/11/17 11:30
- Excel(エクセル) エクセルで”入力シート”の文字書式の変更を”出力シート”で同じ文字書式で印刷したいです。VBA希望 4 2023/04/24 11:07
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/03 11:27
- Excel(エクセル) エクセル バーコード作成で他のシートを参照するには? 2 2023/05/03 16:57
- その他(パソコン・スマホ・電化製品) Webページの印刷 1 2023/04/17 14:01
- Excel(エクセル) エクセルのマクロについて教えてください。 2 2023/01/12 16:58
- Excel(エクセル) 条件に合った数値の合計を表示させたい関数と条件指定の方法 3 2023/05/13 16:07
- その他(データベース) Accessフォームからパラメーターで表示したレコードを指定のExcelのセルへ転送する方法について 2 2022/08/22 18:04
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/03 12:30
このQ&Aを見た人はこんなQ&Aも見ています
-
EXCELで特定のセルに表示された項目をヘッダーやフッターに出力するには
Excel(エクセル)
-
ヘッダー
Excel(エクセル)
-
エクセルで、ヘッダーに他のシートのセルの内容を表示させたいのですが。
Excel(エクセル)
-
-
4
VBAでExcelのヘッダーに文字列+セルの値を入れたい
Visual Basic(VBA)
-
5
Excel VBAで、 ヘッダーへのセル値の「位置」「フォントサイズ」変更は?
Visual Basic(VBA)
-
6
Excelのヘッダー表示を変数で指定する場合
Excel(エクセル)
-
7
エクセルで、分かれた行を印刷タイトルに設定したいです。
Windows 7
-
8
セルの文字を「印刷時だけ非表示」にしたいです。
Excel(エクセル)
-
9
excelで全シートに同じヘッダーを設定したい!
Excel(エクセル)
-
10
エクセルのマクロで印刷プレビューを閉じる方法
Excel(エクセル)
-
11
Excelで特定の文字・記号のところで自動的に改ページしたい
Excel(エクセル)
-
12
exeファイルの中身を見ることは可能ですか?
フリーソフト
-
13
EXCELでタイトル行と一番下の行を固定して印刷したい
会計ソフト・業務用ソフト
-
14
EXCELで2つの数値のうち大きい方を採択する数式
Excel(エクセル)
-
15
特定の文字がある行以外を削除するマクロ
その他(Microsoft Office)
-
16
エクセルで同じ大きさ、同じ倍率、同じ余白なのにプレビューが違います。なぜ?
Excel(エクセル)
-
17
Excelの条件付き書式設定の太い罫線
Excel(エクセル)
-
18
エクセル: セルの枠を超えて表示
Excel(エクセル)
-
19
エクセルでページごとにヘッダー・フッターを設定できますか?
Excel(エクセル)
-
20
エクセル フッターのページ番号をセルに反映させたい。
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
9月17日でサービス終了らし...
-
エクセル ドロップダウンリスト...
-
特定のセルだけ結果がおかしい...
-
エクセルのdatedif関数を使って...
-
【関数】同じ関数なのに、エラ...
-
エクセルの循環参照、?
-
エクセル
-
【マクロ】アクティブセルの時...
-
【マクロ】A列にある、日付(本...
-
iPhoneのExcelアプリで、別のシ...
-
【マクロ】3行に上から下に並...
-
【条件付き書式】シートの中で...
-
【マクロ】EXCELで読込したCSV...
-
【エクセル】期限アラートについて
-
【マクロ】列を折りたたみ非表...
-
【マクロ】WEBシステムから保存...
-
【マクロ】オートフィルターの...
-
Excel 複数のセルが一致すると...
-
エクセルに、105と入力すると、...
-
3〜400人分のデータをExcelで管...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelファイルを開くと私だけVA...
-
エクセルについてどう関数を使...
-
マクロ・VBAで、当該ファイルの...
-
エクセルのセルに画像は埋め込...
-
エクセルで、一部のセルだけ固...
-
【マクロ、画像あり】A表かB表...
-
エクセルでカウントする
-
【マクロ】コードを少しでも、...
-
VBA_日時のソート
-
エクセルで教えてください。 例...
-
エクセル 月間シフト表で曜日ご...
-
セルの左に余白を付ける
-
エクセル
-
エクセルについて教えてください
-
2枚のエクセル表で数字をマッチ...
-
ExcelのIF関数との組み合わせの...
-
エクセルのファイルのコピーを...
-
エクセルで二つのブックの違い...
-
空白処理を空白に
-
Excelのチェックボックスについ...
おすすめ情報