|
▼まこと さん:
>最初の改ページの行を間違えておりました。51ではなく55の間違いでした。
改ページの行を変数にしましたので、自由に対応出来ると思います。
>Range("D" & (3)) = 1 と3を()でくくる意味は何なんでしょう?
>お時間があるときで全然結構ですのでまた教えていただければ幸いです。
すみません。修正するのが面倒だっただけです。
(本当は以前から、Range("D3")の数字が""で囲まれている意味が分からなかったので、ちょっと実験してみた残骸です。)
コードが複雑になってしまい、私も後からは理解できないと思うのですが、ぴったり区切り良く、(データがないのにページ数が記入されないように)するために、こうなりました。
Sub 改ページ100()
Dim i, n, m, no, no2, st As Long
no = 50 '○行おきに挿入
no2 = 2 '挿入する行の数
st = 55 '最初の挿入行位置
i = Range("A65536").End(xlUp).Row
Range("D3").value = 1
For m = 0 To (i - (st - no + no2)) / (no - no2) - 1
Rows(st + m * no).Resize(2).Insert Shift:=xlDown
Range("D" & (st + m * no)).value = m + 1
Rows(4).Copy
Rows(st + m * no + 1).PasteSpecial
Excel.Application.CutCopyMode = False
Next
n = Range("A65536").End(xlUp).Row
For i = st To n Step no
ActiveSheet.HPageBreaks.Add before:=Cells(i, 1)
Next i
End Sub
|
|