エクセルでセルの値をヘッダーに表示する方法

このQ&Aのポイント
  • エクセルで見積書を作成している場合、シート1のC1セルに打ち込んだ物件名をシート2のヘッダーに表示したい場合は、VBEのThisWorkbookに指定のコードを貼り付けます。しかし、この方法ではシート1のヘッダーにも物件名が表示されてしまいます。シート2にのみ物件名を表示させる方法はあるのでしょうか?
  • エクセルで見積書を作成している場合、シート1のC1セルに打ち込んだ物件名をシート2のヘッダーに表示する方法はありますか?VBEのThisWorkbookに指定のコードを貼り付けると、シート2のヘッダーに物件名が表示されますが、シート1のヘッダーにも表示されてしまいます。
  • エクセルで見積書を作成し、シート1のC1セルに打ち込んだ物件名をシート2のヘッダーに表示したい場合、VBEのThisWorkbookに指定のコードを貼り付けます。しかし、この方法ではシート1のヘッダーにも物件名が表示されてしまいます。シート2にのみ物件名を表示させる方法はありますか?
回答を見る
  • ベストアンサー

エクセル ヘッダーにセルの値について教えて下さい

エクセルで見積書を作成しています。 シート1を表紙、シート2を内訳書としています。 シート1のC1セルに打ち込んだ物件名をシート2のヘッダーになるよう設定したいのですが、 Private Sub Workbook_BeforePrint(Cancel As Boolean)  ActiveSheet.PageSetup.leftheader = Range("sheet1!C1").Value End Sub VBEのThisWorkbookに上記を貼付けたところシート2のヘッダーに物件名を表示できましたが、シート1のヘッダーにも出てしまいます。 シート2にのみ表示させる方法ってあるのでしょうか?

  • 7196
  • お礼率80% (4/5)

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

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.2

>シート1のC1セルに打ち込んだ物件名をシート2のヘッダーになるよう設定したい worksheets("Sheet2").pagesetup.leftheader = worksheets("Sheet1").range("C1").value のように書きます。

7196
質問者

お礼

大変ありがとうございます。 ばっちりできました。

その他の回答 (1)

回答No.1

「Activesheet」の意味わかってます?

関連するQ&A

  • エクセルVBAのBeforePrintで

    ThisWorkbookモジュールで Private Sub Workbook_BeforePrint(Cancel As Boolean) If ActiveSheet.Name <> "Sheet1" Then Exit Sub MsgBox "BeforePrintイベント発生" End Sub を使って、Sheet1での印刷のイベントを取得できます。 ただ、指示がPrintなのかPrintPreviewなのかが取得できません。 印刷またはプレビューされる前にどちらの指示なのかを取得する方法がありますか?

  • エクセルで 印刷時に ヘッダーとフッターにセルの値と書式設定をしたいの

    エクセルで 印刷時に ヘッダーとフッターにセルの値と書式設定をしたいのですが Private Sub Workbook_BeforePrintに いろいろやっていまがうまく行きません A1の値をヘッダー左にMS P明朝で太字で表示したいのですが よろしくお願いいたします

  • EXCEL VBA----ヘッダーの設定

    ヘッダーにセルA5の値を表示させたい時は ActiveSheet.PageSetup.LeftHeader = Range("A5") でいいと思うのですが、 複数ページあり、ページ番号のようにページごとに違うヘッダーの値を表示させることはできますでしょうか? 行ないたいのは、 1ページ目→A5の値 2ページ目が8行目で始まる場合→A12の値(ページ先頭行から5行目) 3ページ目が15行目で始まる場合→A19の値(ページ先頭行から5行目) ・ ・ ・ 総ページ数は一定ではありません。 よろしくお願いします。

  • エクセルのヘッダーのことで質問です。

    このサイトで学習して、とあるエクセルシートに"A1"セルの内容を そのまま書き込むマクロを造りました。 With ActiveSheet.PageSetup 'セルA1の値をへッター左にセットする LeftHeader = Range("A1") End With ですが、ここに"A1"と"B1"をセットすると言うふうにするには? あるいは"A1"セルと定数”御中”を一緒にセットさせるにはどのように記述したらよいでしょうか。 よろしくお願いします。

  • エクセルのsheet1つだけの印刷制御について

    win xp office2003を使用しています。 全てのsheetの印刷制御は、下記の方法でできるのはわかっているのですが..... ************************************************* Private Sub Workbook_BeforePrint(Cancel As Boolean) MsgBox "このExcelシートは、印刷できません", vbExclamation Cancel = True End Sub ************************************************* 1つのシートだけを印刷できないようにするにはどうしたら良いでしょうか?

  • エクセルの特定シート(複数)を印刷不可にするVBA

    教えてください。VBA超初心者です。 エクセルで、特定の複数のシート(指定シート)を印刷不可にする方法はありますでしょうか? いろいろと調べてみたところ、特定シート(一つ)を指定する場合はわかりました。 BBシート印刷不可。 ========================== Private Sub Workbook_BeforePrint(Cancel As Boolean) If ActiveSheet.Name <> "BB" Then Exit Sub MsgBox "印刷できません" Cancel = True End Sub '========================== できれば、3つあるシートのうち、 AAシートは印刷可能。 BBシートとCCシートは、印刷不可。 としたいのです。 ご伝授いただけると助かります。よろしくお願いします。

  • VBAでのヘッダー操作について

    ただいまVBAの勉強中なのですが、 13ページあるワークシートに対してヘッダーにページ番号を振るマクロを作成しようとしております。 ページ番号は以下のような3桁表示にしたいのですがうまくいきません。 001,002,・・・009,010,012,013 With Worksheets("表1").PageSetup .LeftHeader = Format$("&P", "000") End With このようにプログラムしたのですが、結果は 1,2,・・・9,10,11,12,13 となってしまいます。 どのようにすれば3桁表示になってくれるのでしょうか?

  • エクセルVBAの不思議な挙動?

    エクセル2003です。 ThisWorkbookには以下の記述があります。 Private Sub Workbook_BeforePrint(Cancel As Boolean) If ActiveSheet.Name <> "Sheet1" Then Exit Sub If Range("A1").Value = "" Then MsgBox "A1が未入力です" Range("A1").Select Cancel = True End If Application.OnTime Now(), "ページ移動" End Sub 標準モジュールには以下の記述があります。 Sub ページ移動() Sheets("Sheet2").Select Range("A1").Select End Sub Sub プリント() ActiveWindow.SelectedSheets.PrintPreview End Sub これでSheet1を開いた状態でツールバーから印刷プレビュー指示をすると、A1セルが入力済みであればプレビュー画面を出し、プレビューを閉じればSheet2が表示されます。 ところが、同じ状態でツールバーからではなく、マクロ Sub プリント を実行すると、プレビュー画面にはなりますが、プレビューを閉じてもSheet1のままです。 なぜ、 Application.OnTime Now(), "ページ移動" が、有効にならないのでしょうか?

  • エクセルマクロ ヘッダーに図挿入 フルパスに変数

    エクセルのマクロについての質問です。基本的な事ですみません。 同じフォルダ内に、エクセルAと画像Bがあります。エクセルAの特定シートから新規にシートaをマクロで作ります。新規シートaの印刷設定で、右ヘッダーに画像Bを入れます。 With ActiveSheet.PageSetup.RightHeaderPicture .Filename = "画像Bのフルパスとファイル名.jpg" End With ActiveSheet.PageSetup.RightHeader = "&G" 上記では上手くいったのですが、フォルダの場所が不特定なので、次のようにしたところ、4行目で止まってしまいます。 Dim WP As String WP = ActiveWorkbook.Path With ActiveSheet.PageSetup.RightHeaderPicture .Filename = "WP&画像Bのファイル名.jpg" End With ActiveSheet.PageSetup.RightHeader = "&G" WP&画像Bのファイル名.jpg がおかしいと思いますが、記述が分かりません。知識なある方、お手隙の方、宜しくお願いいたします。

  • Excelでシート名と最終更新日を自動表示したい

    Excelを使って (1)セルA1に入れた名目をシート名にし (2)セルH1には、最終更新日を自動で入れたいです。 調べた結果、 シート名を右クリックして「コードの表示」から (1)は Private Sub Worksheet_Change(ByVal Target As Range) Sheets(1).Name = Range("B1") End Sub を入れてうまくいきましたが、 (2)は Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)  If ThisWorkbook.Saved = False Then   Worksheets("Sheet1").Range("H1").Value = Date  End If End Sub を入れてみましたが(←調べましたもの) うまくいきませんでした。 単純に、 Private Sub Worksheet_Change(ByVal Target As Range) Sheets(1).Name = Range("B1") End Sub Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)  If ThisWorkbook.Saved = False Then   Worksheets("Sheet1").Range("H1").Value = Date  End If End Sub とつなげて入れるのではだめなんでしょうか? それとも、(2)の何かが間違っていますか? ご教授願います。

専門家に質問してみよう