人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

エクセル操作についての質問です。複数のブックの、ヘッダやフッタ情報を一括で修正する方法があるかどうかを探しています。もしできるという場合は、具体的な手順があると助かります。よろしくお願いします!

●質問者: ahsodik
●カテゴリ:ビジネス・経営 コンピュータ
✍キーワード:エクセル 操作
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● pahoo
●27ポイント

フリーソフト「Excel ヘッダ/フッタ一括設定アドイン」をお試しください。

◎質問者からの返答

ありがとうございました!


2 ● ardarim
●27ポイント

VBAマクロを使えばできます。

サンプル

Option Explicit

Sub test()

 Dim xlsFileNames As Variant
 Dim i As Long
 Dim bk As Workbook
 Dim sh As Worksheet
 
 ' 変更するブック名を指定する
 xlsFileNames = Array("c:\temp\aaa.xls", "c:\temp\bbb.xls")
 
 For i = LBound(xlsFileNames) To UBound(xlsFileNames)
 ' ファイルを開く
 Set bk = Workbooks.Open(xlsFileNames(i))
 
 ' 全てのシートにヘッダ・フッタを設定
 For Each sh In bk.Worksheets
 With sh.PageSetup
 .LeftHeader = "左ヘッダ文字列"
 .CenterHeader = "中央ヘッダ文字列"
 .RightHeader = "右ヘッダ文字列"
 .LeftFooter = "左フッタ文字列"
 .CenterFooter = "中央フッタ文字列"
 .RightFooter = "右フッタ文字列"
 End With
 Next sh
 
 ' 変更を保存してクローズ
 bk.Close True
 
 Next i
 
End Sub
◎質問者からの返答

ありがとうございました!


3 ● oich
●27ポイント

VBAを使って良ければ以下に例を示します。

一口にヘッダやフッタ情報、といっても多岐にわたるので、あくまでヘッダやフッタの一部をいじるだけですが、

Sub 一括修正()
 Dim wb As Workbook
 Dim ws As Worksheet
 
 For Each wb In Application.Workbooks
 For Each ws In wb.Worksheets
 With ws.PageSetup
 .LeftHeader = "Left Header"
 .CenterHeader = "Center Header"
 .RightHeader = "Right Header"
 .LeftFooter = "Left Footer"
 .CenterFooter = "Center Footer"
 .RightFooter = "Right Footer"
 End With
 Next
 Next
End Sub

などとしてはいかがでしょうか?


また、VBAを使わずに、複数ブックのヘッダ・フッタを一括変更することはできないと思います。

上記は、開いているブックが対象なので、開いていないブックを対象にする場合にはブックを開く操作が別途必要になります。

◎質問者からの返答

ありがとうございました!

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ