Excel (一般機能)

Excelの一般機能に関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 7 Professional : Excel 2013)
ページ設定を一括で変更したいのですが、フッターは変えたくないです。
投稿日時: 18/04/06 13:02:27
投稿者: EXIT

いつもお世話になっています。
 
エクセルの既存のデータで、Sheetが20個あります。
これらのページ設定の余白がバラバラなので、一括で変更したいと思い、Sheetを全て選択して余白を一括で変更しました。
しかし一括で変更するとそれぞれのSheetのフッターに書き込んでいた項目名も全て同じ物に変更されてしまいます。
 
フッターの内容を変更せずページ設定のみ変更することは可能でしょうか。
もし可能でしたら方法を教えて下さい。
 
よろしくお願いします。

回答
投稿日時: 18/04/06 17:27:53
投稿者: Suzu

一般機能なのであれば、1ページづつの設定を行いましょう。
 
面倒なのであれば、それこそ繰り返し処理ですので、マクロの出番と思いますよ。

回答
投稿日時: 18/04/07 08:25:37
投稿者: i-brown

Option Explicit

Public Sub SetMargines()
    Dim bk As Workbook: Set bk = ActiveWorkbook
    If bk Is Nothing Then Exit Sub
    
    Dim src As Worksheet: Set src = bk.Worksheets("Sheet1")
    If src Is Nothing Then Exit Sub
    
    Dim sh As Worksheet
    
    Dim setup As PageSetup
    For Each sh In bk.Worksheets
        If sh.Name <> src.Name Then
            sh.PageSetup.LeftMargin = src.PageSetup.LeftMargin
            sh.PageSetup.RightMargin = src.PageSetup.RightMargin
            sh.PageSetup.TopMargin = src.PageSetup.TopMargin
            sh.PageSetup.BottomMargin = src.PageSetup.BottomMargin
        End If
    Next
End Sub

マクロを使えば比較的容易です。
上の例では、Sheet1の余白を設定をそれ以外のシートにコピーしています。

投稿日時: 18/04/09 09:12:25
投稿者: EXIT

Suzuさん
レスありがとうございます。
やはり一般機能では1Sheetずつやっていくしかないのですね。
マクロは使ったことないのですが、勉強する必要がありそうです。
 
i-brownさん
レスありがとうございます。
やはりマクロを使用するのが一番効率がいいということですね。
回答をコピーさせていただきました。今回は時間がないので一枚一枚修正しましたが、作成方法を調べて次回使ってみようと思います。
ありがとうございました。