Home » エクセルマクロ・Excel VBAの使い方 » Rangeオブジェクト » VBAからISNA関数を入力する・利用する

VBAからISNA関数を入力する・利用する

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

「vbaでisna関数の表記方法」
「excel vba ワークシート関数 isna」
「エクセル マクロ アプリケーション関数 isna」
といった検索で、このサイト・インストラクターのネタ帳へのアクセスが、時折あることに気づきました。

これらの検索キーワードを素直に解釈すれば、ワークシート関数のISNA関数を、VBA(Visual Basic for Applications)から入力する方法、または利用する方法を探していたのでしょうか。(本当はそうではないのでは、という予感もしているのですが...)

[スポンサード リンク]

VBAからISNA関数を入力するサンプルマクロ

以下のようなマクロで、「=ISNA(A1)」という数式をB1セルに入力することができます。


Sub ISNA関数をVBAで入力する()

 Cells(1, "B").FormulaR1C1 = "=ISNA(R[0]C[-1])"

End Sub

ループ処理の中で数式を入力するような場合、上記のR1C1形式が便利なことが多いと感じますが、A1形式で入力するのならば、
 Cells(1, "B").Formula = "=ISNA(A1)"
です。

VBAからISNA関数を利用するサンプルマクロ

VBAから、ISNA関数を利用するのならば、以下のマクロが参考になるでしょう。


Sub ISNA関数をVBAから利用する()

 If WorksheetFunction.IsNA(Cells(1, "A").Value) Then
  MsgBox "#N/A エラーです!"
 Else
  MsgBox "#N/A エラーではありません。"
 End If

End Sub

A1セルが#N/Aエラーなら
「#N/A エラーです!」
そうでなければ
「#N/A エラーではありません。」
というメッセージが表示されます。

Home » エクセルマクロ・Excel VBAの使い方 » Rangeオブジェクト » VBAからISNA関数を入力する・利用する

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

TrackBack:0

TrackBack URL

Home » エクセルマクロ・Excel VBAの使い方 » Rangeオブジェクト » VBAからISNA関数を入力する・利用する

「Rangeオブジェクト」の記事一覧

検索

.