[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『改ページの統一』(ゾーマ)
とある調査票を配布し、回収したのですが、セキュリティの関係等で配布時の改ページが変更されているものがありました。
こちらの作業としては一つのブックに各シートをまとめるのですが
ものによって改ページの位置がちがうというのは印刷するときにも困ります。
作業グループ状態で、印刷範囲を変更しようとしたのですが、グレーアウトになっており、おそらく仕様でできないのかと思います。
そこでマクロで疑似的に実行しようと思います。
選択しているシートを先頭の改ページ範囲にすべて変更するというものを作ろうとしてますが、まず範囲取得から壁にぶち当たって作れておりません。
お力添えよろしくお願いいたします。
< 使用 Excel:Excel2013、使用 OS:Windows7 >
Sub test() Dim wk As Worksheet Dim i As Long Dim j As Long
Set wk = Sheets(1)
For i = 2 To Sheets.Count With Sheets(i) .ResetAllPageBreaks For j = 1 To wk.HPageBreaks.Count .HPageBreaks.Add before:=.Range(wk.HPageBreaks(j).Location.Address) Next j End With Next i End Sub (???) 2018/06/19(火) 17:05
一応そっくりそのままのページ設定が良いので列方向もほしいですが、
おそらく垂直はVPageBreaks.〜を入れれば良いと思うのでとりあえずこれで試してみます!
(ゾーマ) 2018/06/19(火) 17:21
または、印刷範囲の設定は、「名前の管理」にある「Print_Area」に範囲情報がありますが、これが関係していませんか? 名前定義を消すか、1つ目のシートに合わせてみてください。
Sub test() Dim iR As Long Dim N As Name
For Each N In ThisWorkbook.Names iR = iR + 1 Cells(iR, "A").Value = N.Name Cells(iR, "B").Value = "'" & N.Value N.Delete Next N End Sub
(定義を消すなら N.Delete するだけ)
(???) 2018/06/20(水) 10:26
見るだけなら、Deleteの行をコメントアウトすれば良いし、削除だけならセルに情報を代入しているのを止めれば良い。印刷範囲だけ消すなら、N.Name を調べて、該当したときだけ消すように変えれば良いです。1つ目のシートに範囲を合わせるなら、1つ目のシート名のPrint_Areaの指定を、他のシートのものに当てはまれば良いでしょう。
(???) 2018/06/22(金) 09:17
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.