|
>With ActiveSheet
> If .Index > Worksheets.Count Then
> .Next.Activate
> End If
>End With
>
>などとする方が、すっきりしますね。
ずいぶんスッキリしましたね。勉強になりました。
If .Index < Worksheets.Count Then
ですね。
元のコードを生かすなら
Exit Sub を入れた方がいいかも。
'右のシートを開く(一番右のシートがアクティブなら実行されない)
Sub Test1()
Dim i As Integer
For i = 1 To Worksheets.Count - 1 '●一番右ならもう右へ行けないから
If ActiveSheet.Name = Worksheets(i).Name Then
Worksheets(i + 1).Activate '●右側だから一つ番号が大きくする
Exit Sub '●これを追加
End If
Next
End Sub
'左のシートを開く
Sub Test2()
Dim i As Integer
For i = 2 To Worksheets.Count '●一番左の場合はもう左へ行けないから2から始める
If ActiveSheet.Name = Worksheets(i).Name Then
Worksheets(i - 1).Activate
Exit Sub
End If
Next
End Sub
|
|