Home » エクセルマクロ・Excel VBAの使い方 » 条件分岐 » セルの値がエラーでないかをVBAで判定する-Not演算子・IsError関数

セルの値がエラーでないかをVBAで判定する-Not演算子・IsError関数

動作検証バージョン:64bit Windows 10 Pro + 32bit Excel(バージョン1911 ビルド12228.20331 Microsoft Store)

「vba エラーでなければ 条件文」
という検索キーワードでアクセスがありました。

いくつかの可能性の考える検索キーワードですが、Excel VBAで、
「セルの値がエラーでなければ」
という条件を、Excel VBAでどう書けばいいのか調べていたのかな、と想像しています。

[スポンサードリンク]

セルの値がエラーかを判定する

「セルの値がエラーでなければ」
という条件の前に、
「セルの値がエラーならば」
のを理解しましょう。

Sub セルの値がエラーかを判定する()
 If IsError(ActiveCell.Value) Then
  MsgBox "アクティブセルは、エラーです!!"
 Else
  MsgBox "アクティブセルは、エラーではありません。"
 End If
End Sub

上記のようなSubプロシージャで、アクティブセルの値がエラーかどうかを判定できます。

VBAのIsError関数を使えばOKということです。

もしも、
  If IsError(ActiveCell.Value) Then
の部分がピンと来なければ、
  If IsError(ActiveCell.Value) = True Then
という冗長な書き方で、まずは理解しましょう。

セルの値がエラーでないかを判定する

で、本題の
「セルの値がエラーでなければ」
は以下のとおりです。

Sub セルの値がエラーでないかを判定する()
 If Not IsError(ActiveCell.Value) Then
  MsgBox "アクティブセルは、エラーではありません。"
 Else
  MsgBox "アクティブセルは、エラーです!!"
 End If
End Sub

先ほどのIsError関数を使った論理式をNot演算子で反転すれば、
  If Not IsError(ActiveCell.Value) Then
「エラーでなければ」という条件になります。

最終更新日時:2019-12-11 10:50

[スポンサードリンク]

Home » エクセルマクロ・Excel VBAの使い方 » 条件分岐 » セルの値がエラーでないかをVBAで判定する-Not演算子・IsError関数

「条件分岐」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.