| 
    
     |  | ▼nakataka さん: 
 >ありがとうございます。
 >
 >この構文を解析して、何とか作成しています。
 >が、罫線を引く事を目的にしています。
 >ので、表の一番下の範囲を選択できません。
 >何かいい方法はないでしょうか?
 
 先ずは、どのような方法をご自身で試されたのか書いた方がよろしいかと思います。
 この書かれ方だと私以外に解答し難くると思います。ご自身の状況を明示した方が他の方から新しい情報を得易いと思います。また私もいつもこの質問箱で勉強させていただいている身でスキルはありませんので最適な方法を提示しているわけではなく、「今の自分ならこの方法で出来るけど参考になるかな?」というものを投稿していますのでご理解下さい。
 一応最終データに対応するよう追加しておきましたが、やはり初めに投稿したようなデータごとの終了行を判断するようにしたほうが汎用性があると思います。
 
 Sub test2()
 Dim i As Long, j As Long
 Dim RS As Long, RE As Long
 j = 1
 RS = 2 'データが2行目から始まる前提です。でなければフラグが必要
 RE = Cells(65536, 1).End(xlUp).Row 'データの最終行(データ範囲の最後)
 For i = 3 To RE
 If Cells(i, TC).Value = 1 Then
 Range(Cells(RS, 1), Cells(i - 1, 2)).Select
 MsgBox "範囲 " & j & " です"
 RS = i
 j = j + 1
 ElseIf i = RE Then
 Range(Cells(RS, 1), Cells(i, 2)).Select
 MsgBox "範囲 " & j & " です"
 End If
 Next i
 End Sub
 
 |  |