|
▼akko さん:
>> For Each myPb In ActiveSheet.HPageBreaks
>でインデックスが有効範囲でありません とエラーが出る理由は
>ページ設定で横1×縦○を選んでいるからだと判明しました
>
>それを拡大・縮小にすればマクロ自体は動いたように見えました。
>が、実際処理はされていませんでした。
>エラーも出ず終わるのですが、
>罫線の実線も改ページ後の1行目のフォント黒も
>どちらもできてませんでした。
>
>何が考えられるのでしょうか…
私は、Hpagebreakが取得できるか否かに重点を置いていたので
実際には、akko さんの提示されたコードでテストしているわけではありませんが、
↓これは、Hpagebreakが取得できたとしても正常に作動しませんよ!!
Sub test()
Dim myRng As Range '
Dim myPb As HPageBreak '
Dim myPbRng As Range '
For Each myPb In ActiveSheet.HPageBreaks
Set myPbRng = Nothing
On Error Resume Next
Set myPbRng = Intersect(myRng, _
myPb.Location.EntireRow.Offset(-1))
' ↑これmyRngには、何も設定されていないですから・・。
On Error GoTo 0
'
'-----------------------------------------------------
' 合計行の下線の変更 と 改ページ後1行目名の表示
'-----------------------------------------------------
'
If Not myPbRng Is Nothing Then
With myPbRng.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlThin
End With
With myPbRng.Cells.Offset(1)
.Font.ColorIndex = 1
End With
End If
Next
私は、これ省略しているだけでどこかで設定しているのだろうと解釈していました。
>ページ設定で横1×縦○を選んでいるからだと判明しました
だとすると、同じエラーでも私とakko さんとでは、見ているシートが違うのだと
思います。
私とakko さんとで見ているシートの同期をとらなければなりませんね!!
出かけるので後になりますが、同じシートを見られるように同期をとる
ことを試みようと思います。
まずは、上記のエラー箇所を確認してみて下さい。
|
|