Excel VBAでワークシート関数の「ISFORMULA」を使って、セルが数式かどうかを判断する記録です。
下図はExcel2016です。
< スポンサーリンク >
構文
WorksheetFunction.IsFormula(Arg1)
数式を含むセルへの参照であるかどうかを調べ、TrueまたはFalseを返します。戻り値はブール型(Boolean)です。
Arg1=必須。テストするセルへの参照を指定します。セル参照、数式、またはセルを参照する名前を指定できます。
セルが数式かどうかを判断する例
アクティブシートのB2のセルが数式かどうかをメッセージで表示します。
Sub test()
MsgBox WorksheetFunction.IsFormula(ActiveSheet.Range(“B2”))
End Sub
アクティブシートのD2のセルが数式かどうかをメッセージで表示します。
Sub test()
MsgBox WorksheetFunction.IsFormula(ActiveSheet.Range(“D2”))
End Sub
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
D3は数式ではなく、「33」という数値が入っているのでFALSEになっています。
VBAではなく、ワークシートのセルに関数を書き込む場合はこちら↓
Excelのシートをパッと見た時に、セルに入力されているのが値なのか数式なのかわかりません。 数式が入っているかどうかを調べる方法を記録します。 数式が入っているかどうかを調べるには、「ISFORMULA」関数を使います …
こんな記事も書いています