Vbaでif notを使用するにはどうすればよいですか?

VBA では、 IF ステートメントを使用すると、テストするために指定した条件が TRUE の場合にコード行が実行されます。ただし、IF で NOT 演算子を使用すると、指定した条件が TRUE でないかどうかがチェックされ、それに基づいてコードが実行されます。

これは、反対の IF ステートメント、つまり TRUE から FALSE、FALSE から TRUE を実行するようなものです。

A < B かどうかをテストしたいとします。この条件が true の場合、IF は TRUE を返しますよね。ただし、IF NOT A < B を使用すると、FALSE が返されます。

注: NOT は論理演算子です。

VBA IF NOT の使用例

ここでそれを理解するための簡単な例を見てみましょう。

VBA を使用する場合の例
 Sub myMacro() Dim A As Range, B As Range Set A = Range("A1") Set B = Range("B1") If Not A < B Then MsgBox "A is not greater than B." Else MsgBox "B is not greater than A." End If End Sub

上記のコードでは、NOT 演算子を使用して、B が A より大きくないかどうかをテストしました。

条件ステートメントを見ると、実際にテストされる条件は B が A より大きいかどうかであることがわかりますが、NOT ステートメントを使用しているため、条件が TRUE の場合は FALSE が返されます。

これを理解するために使用できる別の例を示します。

 Sub myMacro() If Not ActiveSheet.Name = Sheets("Sheet1").Name Then Sheets("Sheet1").Activate End If End Sub

このコードでは、 IF で NOT を使用して、アクティブなシートが Sheet1 であるかどうかを確認し、そうでない場合は、指定したコード行でSheet1 をアクティブにします。

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です