NulltoInt
Nullだったら0、Null以外はInt型に変換
数値以外は0
VBAでのinteger型(-32,768 ~ 32,767)範囲を超えると
エラーでコケる
longとか、Currencyとか類似関数はその時に応じて作成
Function NulltoInt(ByVal vData As Variant) As Integer
Dim sData As String
sData = NulltoStr(vData)
If sData = "" Then
NulltoInt = 0
Else
If IsNumeric(sData) = True Then
NulltoInt = CInt(sData)
Else
NulltoInt = 0
End If
End If
End Function
数値以外は0
VBAでのinteger型(-32,768 ~ 32,767)範囲を超えると
エラーでコケる
longとか、Currencyとか類似関数はその時に応じて作成
Function NulltoInt(ByVal vData As Variant) As Integer
Dim sData As String
sData = NulltoStr(vData)
If sData = "" Then
NulltoInt = 0
Else
If IsNumeric(sData) = True Then
NulltoInt = CInt(sData)
Else
NulltoInt = 0
End If
End If
End Function
Nullって何さ?
NulltoStr関数はNullでも文字列に変換する関数なんだけど
そもそもNullって何さ?ということで私的解釈。
Null = 「なんにもない」がある状態
概念的には0(ゼロ)に近い。
0も数値的に「何もない」を表しているけれど、
そこには「ゼロ」があるので「0」と表記される。
""で表記される文字列ゼロでも、0で表記される数値ゼロ
でもなく、何かあるけど、何も観測されない状態、定義
されていない状態「なんにもない」がある状態を
Nullと表記している。
そもそもNullって何さ?ということで私的解釈。
Null = 「なんにもない」がある状態
概念的には0(ゼロ)に近い。
0も数値的に「何もない」を表しているけれど、
そこには「ゼロ」があるので「0」と表記される。
""で表記される文字列ゼロでも、0で表記される数値ゼロ
でもなく、何かあるけど、何も観測されない状態、定義
されていない状態「なんにもない」がある状態を
Nullと表記している。