0

私はするために使用Selection.Row = 1Exit Subます。

Range("B1")しかし、が使用されている場合は続行するコードが必要です

これを行う方法はありますか?前もって感謝します。

4

2 に答える 2

0

If Selection.row = 1 And Selection.Column <> 2 Then Exit Sub

于 2012-12-25T12:55:00.207 に答える
0

理想的には、完全に避けるべきSelectionです。しかし、あなたが尋ねたように質問するために

  1. 選択に行 1 が含まれているかどうかをテストします。
  2. 含まれている場合は、2 番目のテストが実行B1され、 が に含まれているかどうかがテストされます。含まれているSelection場合はコードが終了し、含まれていない場合はコードが続行されます。

最も一般的な初期のテスト終了が最初にテストされるように、満たさなければならない 2 つの個別のテストを個別のテストに分割することが常にコード全体で最善です。Andこれは、最初の条件がすでに失敗している場合に 2 番目の条件を実行してテストするよりも効率的です。

コード

Sub TestExit()
Dim rng1 As Range
If Not Intersect(Rows(1), Selection) Is Nothing Then
Set rng1 = Intersect(Selection, [b1])
If rng1 Is Nothing Then Exit Sub
End If
End Sub
于 2012-12-25T11:07:45.203 に答える