• 締切済み

Excelで複数シート同時に印刷範囲の設定はできないのでしょうか?

Excelで、同じフォーマット(つくりが同じ)のシートが複数あったとして、その印刷範囲をシートまとめて変更する方法はありませんか? シートを複数選択すると印刷範囲の変更ができないようで困ってます。シート1枚1枚変更する手間にくじけそうになってますので、どなたか分かるかたご教授願います。 ちなみにバージョンは2003です。

みんなの回答

  • KenKen_SP
  • ベストアンサー率62% (785/1258)
回答No.1

マクロでやったら? 1. 新規ブックの標準モジュールに下記ソースコードをコピペし   適当に保存します。(このブックは閉じないでそのまま開いておく) 2. 対象のブックを開いて、処理を行うシートを”作業グループ”にします。 3. [Alt]+[F8] を押してマクロを実行 おまけで、作業グループの印刷設定(余白とか紙の向きとか)を そろえるマクロも添付しておきました。 Sub 選択したシートの印刷範囲をそろえる()      Dim sh     As Worksheet   Dim sPrintAddr As String   Dim iRes    As Integer      AppActivate Application.Caption   If ActiveWindow.SelectedSheets.Count = 1 Then     MsgBox "印刷範囲をそろえるシートを作業グループにして下さい", vbInformation     Exit Sub   End If   iRes = MsgBox("シート[" & ActiveSheet.Name & "]の印刷範囲が複写されます。" _       & vbLf & "続行しますか?", vbInformation + vbOKCancel + vbDefaultButton2)   If CLng(iRes) = vbCancel Then Exit Sub      sPrintAddr = ActiveSheet.PageSetup.PrintArea   Application.ScreenUpdating = False   On Error Resume Next   For Each sh In ActiveWindow.SelectedSheets     sh.PageSetup.PrintArea = sPrintAddr   Next   MsgBox "Done.", vbInformation End Sub Sub 印刷設定をそろえる()      Dim iRes As Integer      AppActivate Application.Caption   If ActiveWindow.SelectedSheets.Count = 1 Then     MsgBox "印刷設定をそろえるシートを作業グループにして下さい", vbInformation     Exit Sub   End If   iRes = MsgBox("シート[" & ActiveSheet.Name & "]の印刷設定が複写されます。" _       & vbLf & "続行しますか?", vbInformation + vbOKCancel + vbDefaultButton2)   If CLng(iRes) = vbCancel Then Exit Sub      SendKeys "{ENTER}"   Application.Dialogs(xlDialogPageSetup).Show   MsgBox "Done.", vbInformation End Sub ' # 勢いかつ適当に作ったので、何回かはうまく動作してるか確認 ' # して下さい(・∀・)

wanko101
質問者

お礼

知識が足りなく参考になりませんでした。せっかく書いていただいたのに役立てずすいません。もっと簡単な方法があると思っていたので残念です。

関連するQ&A