Home » エクセルマクロ・Excel VBAの使い方 » VBAでIs演算子の否定は?

対象:Excel2007, Excel2010, Excel2013, Windows版Excel2016

「vba is演算子 否定」
という検索で、このサイト・インストラクターのネタ帳へのアクセスがありました。

VBA(Visual Basic for Applications)で、比較演算子のひとつIs演算子の否定は、どう書けばいいのかを探していた方による検索キーワードです。

[スポンサード リンク]

Is演算子でオブジェクト変数を比較するサンプルマクロ

まず、否定ではない、Is演算子の基本を確認しましょう。


Sub Is演算子でオブジェクト変数が同じか調べる()
 Dim sh1 As Worksheet
 Dim sh2 As Worksheet

 Set sh1 = Sheets(1)
 Set sh2 = ActiveSheet

 If sh1 Is sh2 Then
  MsgBox "同じです!"
 Else
  MsgBox "違うよ。"
 End If
End Sub

上記のSubプロシージャを実行すると、
アクティブシートが、先頭のシートだったときに
「同じです!」
アクティブシートが、先頭のシートでなければ、
「違うよ。」
と表示されます。

Ifステートメントの、
 If sh1 Is sh2 Then
のIsが基本的なIs演算子の使い方です。

Is演算子とNot演算子でオブジェクト変数を比較するサンプルマクロ

「vba is演算子 否定」
という検索をなさった方が探していらしたのは、以下のようなコードでしょう。


Sub Is演算子でオブジェクト変数が同じか調べる_Not演算子利用()
 Dim sh1 As Worksheet
 Dim sh2 As Worksheet

 Set sh1 = Sheets(1)
 Set sh2 = ActiveSheet

 If Not (sh1 Is sh2) Then
  MsgBox "違うよ。"
 Else
  MsgBox "同じです!"
 End If
End Sub

上記のプロシージャの、
  If Not (sh1 Is sh2) Then
が「vba is演算子 否定」です。

Not演算子を使います。

このNot演算子を使う場合、
  If Not (sh1 Is sh2) Then
ではなく、
  If Not sh1 Is sh2 Then
でもOKですが、カッコで括っておくほうが、理解しやすいと感じる方が多いのではないでしょうか。

Home » エクセルマクロ・Excel VBAの使い方 » VBAでIs演算子の否定は?

[スポンサード リンク]
[スポンサード リンク]

TrackBack:0

TrackBack URL

Home » エクセルマクロ・Excel VBAの使い方 » VBAでIs演算子の否定は?

「エクセルマクロ・Excel VBAの使い方」の記事一覧

検索

最近じっくりと読まれている記事

.