[VBA]引数に与えられた(行,列)の値が空白であればTrueを返す関数[ISBLANK]
Exceのワークシート関数ISBLANKのVBAバージョン。
引数に与えらた ( 行,列 )の値が空白であればTrueを返し、
空白でなければFlaseを返す関数です。
Function IsBlank(targetRow As Long, targetCol As Long) As Boolean
If Cells(targetRow, targetCol) = "" Then
IsBlank = True
Else
IsBlank = False
End If
End Function
VBAにはExcelのISBLANKと同じような関数は、用意されていない(?)みたいなので作りました。
コピペして、こんな感じで呼び出します。
Sub Example()
If IsBlank(1, 1) = True Then
MsgBox "空白です。"
ElseIf IsBlank(1, 1) = False Then
MsgBox "空白ではありません。"
End If
End Sub
以上です。
[ 雑記 ]
この「行と列を引数にして呼び出す」というのが肝心なんだよね。
似たようなIsEmpty関数というのは標準で用意はされていて、
If IsEmpty(Range("A1").Value) = True Then
MsgBox "Cell A1 is empty"
End If
こんな感じで使える、
通常は、その変数が初期化されているかどうかを調べる関数らしい。
今回のISBLANKみたいなのは標準で用意してくれてもいいのにね。
嫌がらずにアップデートしてくれよMicrosoftさん。
[ 参考記事 ]
Microsoft 公式リファレンス
https://learn.microsoft.com/ja-jp/dax/isblank-function-dax