- 締切済み
Excelで複数シート同時に印刷範囲の設定はできないのでしょうか?
Excelで、同じフォーマット(つくりが同じ)のシートが複数あったとして、その印刷範囲をシートまとめて変更する方法はありませんか? シートを複数選択すると印刷範囲の変更ができないようで困ってます。シート1枚1枚変更する手間にくじけそうになってますので、どなたか分かるかたご教授願います。 ちなみにバージョンは2003です。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- KenKen_SP
- ベストアンサー率62% (785/1258)
マクロでやったら? 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 ' # 勢いかつ適当に作ったので、何回かはうまく動作してるか確認 ' # して下さい(・∀・)
お礼
知識が足りなく参考になりませんでした。せっかく書いていただいたのに役立てずすいません。もっと簡単な方法があると思っていたので残念です。