Excel VBAでISFORMULA関数を使ってセルが数式かどうかを判断する

Excel VBAでワークシート関数の「ISFORMULA」を使って、セルが数式かどうかを判断する記録です。

下図はExcel2016です。

< スポンサーリンク >





構文

WorksheetFunction.IsFormula(Arg1)

数式を含むセルへの参照であるかどうかを調べ、TrueまたはFalseを返します。戻り値はブール型(Boolean)です。

Arg1=必須。テストするセルへの参照を指定します。セル参照、数式、またはセルを参照する名前を指定できます。

 

セルが数式かどうかを判断する例

アクティブシートのB2のセルが数式かどうかをメッセージで表示します。

Sub test()
    MsgBox WorksheetFunction.IsFormula(ActiveSheet.Range(“B2”))
End Sub

VBAでisformula関数

VBAでisformula関数

  

アクティブシートのD2のセルが数式かどうかをメッセージで表示します。

Sub test()
    MsgBox WorksheetFunction.IsFormula(ActiveSheet.Range(“D2”))
End Sub

VBAでisformula関数

VBAでisformula関数

  

D列のセルが数式かどうかをE列に入力します。

Sub test()
    Dim ws As Worksheet
    Dim i As Long

    ‘変数にアクティブシートをセット
    Set ws = ActiveSheet

    ‘E列にD列が数式かどうかを入力
    With ws
        For i = 2 To 6
            .Cells(i, 5).Value = WorksheetFunction.IsFormula(.Cells(i, 4))
        Next i
    End With
End Sub

VBAでisformula関数

VBAでisformula関数

D3は数式ではなく、「33」という数値が入っているのでFALSEになっています。

 

VBAではなく、ワークシートのセルに関数を書き込む場合はこちら↓

 

< スポンサーリンク >※広告先のお問い合わせは広告主様にお願いします