• 締切済み

エクセルのヘッダにセルの値を入れたい

最近頻繁にお世話になっており感謝しております。 エクセル2010を使っているのですが、ヘッダにセルの式の値を表示して印刷することは出来ないのでしょうか? 日付けやファイル名等は表示できることは知ってるのですが。

みんなの回答

  • imogasi
  • ベストアンサー率27% (4737/17070)
回答No.3

#2の補足に関して。 エクセルVBAにはBeforPrintとかSheetActivateとかのEventのしくみがある。 それを使えば、自動でやってくれる。 そういう仕組みもあることを述べるだけ。使う気はないだろうが。 ーー エクセルのシート印刷には、「タイトル行」という仕組みがある。 Googleで「エクセル タイトル行」で照会すると https://www.google.co.jp/#q=%E3%82%A8%E3%82%AF%E3%82%BB%E3%83%AB+%E3%82%BF%E3%82%A4%E3%83%88%E3%83%AB%E8%A1%8C&*&spf=373 など解説記事が出る。 使えないかな。

akira0723
質問者

補足

早々の重ねてのご回答ありがとうございます。 #2の「test01()」でうまく行きましたので、お手数ですが「BeforPrintとかSheetActivate」の手順を教えて頂けないでしょうか? タイトル行はこれはこれで直ぐに活用できるテクですので、ありがたく使わせていただきます。

すると、全ての回答が全文表示されます。
  • imogasi
  • ベストアンサー率27% (4737/17070)
回答No.2

すでに同じ質問がある。 https://okwave.jp/qa/q330318.html マクロを使わないと、できないようだ。 マクロは避けたいという人が多いが、たった数行(つきつめて1行) マクロの記録のコードを借用すると セル A1の値を使いたいとして Sub test01() With ActiveSheet.PageSetup .LeftHeader = Range("A1") & Chr(10) & "" End With End Sub または上記を1行に簡略化して Sub test02() ActiveSheet.PageSetup.LeftHeader = Range("A1") & Chr(10) & "" End Sub LeftHeader はCenterHeader、RightHeaderお好みで。 設定後A1の値を変えても自動では変わらない。印刷直前に再実行必要。

akira0723
質問者

補足

早々のご回答に感謝いたします。 >設定後A1の値を変えても自動では変わらない。印刷直前に再実行必要 との事、今確認しました。 ガックリ!!です。 毎回マクロを再実行するなら、ヘッダを毎回更新した方が分かり易いですよね。 困った、困った。

すると、全ての回答が全文表示されます。
  • FEX2053
  • ベストアンサー率37% (7995/21384)
回答No.1

マクロを使わないと上手く行きません。 マクロを使う方法はこちらを。 http://www.eurus.dti.ne.jp/~yoneyama/Excel/vba/vba_header.html

akira0723
質問者

お礼

自己解決できました。 通常の関数を使う時と同じように”Sheet〇!”で指定できることが分かりました。 お騒がせしました。 ありがとうございました。

akira0723
質問者

補足

早々のご回答ありがとうございます。 教えて頂いた方法で出来ることを確認しました。 但し、追加の質問として下記の条件が満たせれば非常に有用なことに気付きました。 後知恵で申し訳ありませんが宜しくお願いします。 複数のシート(book全体)に1つのセルを指定したいのですが。 例えばsheet5のA1を全てのシートのヘッダに指定したいのですが、sheetの指定の仕方が分かりません。 全部のシートの印刷しない箇所(セル)に特定のシートのセルをコピー(= )で反映させる事くらいしか思いつかないのですが、何か便利な方法があれば教えてください。

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

関連するQ&A