回答編集履歴
10
追記
answer
CHANGED
@@ -11,4 +11,19 @@
|
|
11
11
|
|
12
12
|
こういったVBAの型とデータの隙間を埋めてくれる便利な関数として[NZ関数](https://support.microsoft.com/ja-jp/office/nz-%E9%96%A2%E6%95%B0-8ef85549-cc9c-438b-860a-7fd9f4c69b6c)があります。
|
13
13
|
Nullの判定と、値がNullの場合に返却する値を指定する事ができるので、Null判定処理をコンパクトに纏める事が出来ます。
|
14
|
-
※返却値を省略した場合はコードの内容から自動的な変換もするので、理解して使用する分には便利です。
|
14
|
+
※返却値を省略した場合はコードの内容から自動的な変換もするので、理解して使用する分には便利です。
|
15
|
+
|
16
|
+
> プログラムの基本からするとこの対処法が望ましい
|
17
|
+
|
18
|
+
「理解した上で、臨機応変に」というのが望ましい事だと思います。
|
19
|
+
|
20
|
+
以下の組合せはどちらもエラーにはなりません。
|
21
|
+
```VBA
|
22
|
+
Private Sub 文字表示(表示文字 As String)
|
23
|
+
|
24
|
+
文字表示(Nz(textboxA))
|
25
|
+
''''
|
26
|
+
Private Sub 文字表示(表示文字 As Variant)
|
27
|
+
|
28
|
+
文字表示(textboxA)
|
29
|
+
```
|
9
推敲
answer
CHANGED
@@ -1,12 +1,11 @@
|
|
1
|
-
VBAの場合NUllが許されるのはVariant型です。
|
1
|
+
VBAの場合NUllが許されるのはVariant型です。(テキストボックスなどもある意味Variant型です)
|
2
2
|
(Nullでない場合に値によって内部的に型が決まります)
|
3
3
|
一方テーブルの型にはVariant型はなく、Nullを許可しない設定にしない限り、全ての型にNullはあり得ます。
|
4
4
|
※NotNullの指定をしていたとしても、SQLでouter joinするとNullは返却されますから、データとしてはNullがあり得る事を前提として考えるべきですが。
|
5
5
|
|
6
|
-
ですので、Null対応としては、以下の併用ですね。
|
6
|
+
ですので、Nullがあり得る場合の対応としては、以下の併用ですね。
|
7
7
|
・Variant型を使用する
|
8
8
|
NullはNullのままです。便利な分明示的な型よりは低速です。
|
9
|
-
クエリーから呼び出す関数のパラメータの型としては良く使用します。
|
10
9
|
・Null判定を行う
|
11
10
|
最も簡潔になるのがNz()
|
12
11
|
|
8
推敲
answer
CHANGED
@@ -11,5 +11,5 @@
|
|
11
11
|
最も簡潔になるのがNz()
|
12
12
|
|
13
13
|
こういったVBAの型とデータの隙間を埋めてくれる便利な関数として[NZ関数](https://support.microsoft.com/ja-jp/office/nz-%E9%96%A2%E6%95%B0-8ef85549-cc9c-438b-860a-7fd9f4c69b6c)があります。
|
14
|
-
Nullの判定と、値がNullの場合に返却する
|
14
|
+
Nullの判定と、値がNullの場合に返却する値を指定する事ができるので、Null判定処理をコンパクトに纏める事が出来ます。
|
15
15
|
※返却値を省略した場合はコードの内容から自動的な変換もするので、理解して使用する分には便利です。
|
7
推敲
answer
CHANGED
@@ -3,12 +3,12 @@
|
|
3
3
|
一方テーブルの型にはVariant型はなく、Nullを許可しない設定にしない限り、全ての型にNullはあり得ます。
|
4
4
|
※NotNullの指定をしていたとしても、SQLでouter joinするとNullは返却されますから、データとしてはNullがあり得る事を前提として考えるべきですが。
|
5
5
|
|
6
|
-
ですので、Null対応としては、以下の
|
6
|
+
ですので、Null対応としては、以下の併用ですね。
|
7
|
+
・Variant型を使用する
|
8
|
+
NullはNullのままです。便利な分明示的な型よりは低速です。
|
9
|
+
クエリーから呼び出す関数のパラメータの型としては良く使用します。
|
7
10
|
・Null判定を行う
|
8
11
|
最も簡潔になるのがNz()
|
9
|
-
・簡易にエラーを回避する為にVariant型を使用する
|
10
|
-
NullはNullのままです。便利な分明示的な型よりは低速です。
|
11
|
-
クエリーから呼び出す関数のパラメータの型としては良く使用します。
|
12
12
|
|
13
13
|
こういったVBAの型とデータの隙間を埋めてくれる便利な関数として[NZ関数](https://support.microsoft.com/ja-jp/office/nz-%E9%96%A2%E6%95%B0-8ef85549-cc9c-438b-860a-7fd9f4c69b6c)があります。
|
14
14
|
Nullの判定と、値がNullの場合に返却する型指定する事ができるので、Null判定処理をコンパクトに纏める事が出来ます。
|
6
推敲
answer
CHANGED
@@ -4,8 +4,11 @@
|
|
4
4
|
※NotNullの指定をしていたとしても、SQLでouter joinするとNullは返却されますから、データとしてはNullがあり得る事を前提として考えるべきですが。
|
5
5
|
|
6
6
|
ですので、Null対応としては、以下の何れかです。
|
7
|
+
・Null判定を行う
|
7
|
-
|
8
|
+
最も簡潔になるのがNz()
|
8
|
-
・簡易にエラーを回避する為にVariant型を使用する
|
9
|
+
・簡易にエラーを回避する為にVariant型を使用する
|
10
|
+
NullはNullのままです。便利な分明示的な型よりは低速です。
|
11
|
+
クエリーから呼び出す関数のパラメータの型としては良く使用します。
|
9
12
|
|
10
13
|
こういったVBAの型とデータの隙間を埋めてくれる便利な関数として[NZ関数](https://support.microsoft.com/ja-jp/office/nz-%E9%96%A2%E6%95%B0-8ef85549-cc9c-438b-860a-7fd9f4c69b6c)があります。
|
11
14
|
Nullの判定と、値がNullの場合に返却する型指定する事ができるので、Null判定処理をコンパクトに纏める事が出来ます。
|
5
訂正
answer
CHANGED
@@ -9,4 +9,4 @@
|
|
9
9
|
|
10
10
|
こういったVBAの型とデータの隙間を埋めてくれる便利な関数として[NZ関数](https://support.microsoft.com/ja-jp/office/nz-%E9%96%A2%E6%95%B0-8ef85549-cc9c-438b-860a-7fd9f4c69b6c)があります。
|
11
11
|
Nullの判定と、値がNullの場合に返却する型指定する事ができるので、Null判定処理をコンパクトに纏める事が出来ます。
|
12
|
-
※
|
12
|
+
※返却値を省略した場合はコードの内容から自動的な変換もするので、理解して使用する分には便利です。
|
4
推敲
answer
CHANGED
@@ -3,10 +3,10 @@
|
|
3
3
|
一方テーブルの型にはVariant型はなく、Nullを許可しない設定にしない限り、全ての型にNullはあり得ます。
|
4
4
|
※NotNullの指定をしていたとしても、SQLでouter joinするとNullは返却されますから、データとしてはNullがあり得る事を前提として考えるべきですが。
|
5
5
|
|
6
|
+
ですので、Null対応としては、以下の何れかです。
|
7
|
+
・Null判定を行う※最も簡潔になるのがNz()
|
8
|
+
・簡易にエラーを回避する為にVariant型を使用する※NullはNullのまま
|
9
|
+
|
6
10
|
こういったVBAの型とデータの隙間を埋めてくれる便利な関数として[NZ関数](https://support.microsoft.com/ja-jp/office/nz-%E9%96%A2%E6%95%B0-8ef85549-cc9c-438b-860a-7fd9f4c69b6c)があります。
|
7
11
|
Nullの判定と、値がNullの場合に返却する型指定する事ができるので、Null判定処理をコンパクトに纏める事が出来ます。
|
8
|
-
※さらに、返却値を省略した場合はコードの内容から自動的に変換してくれます。
|
12
|
+
※さらに、返却値を省略した場合はコードの内容から自動的に変換してくれます。
|
9
|
-
|
10
|
-
ですので、Null対応としては、以下の何れかです。
|
11
|
-
・Null判定を行う※最も簡潔になるのがNz()
|
12
|
-
・簡易にエラーを回避する為にVariant型を使用する※NullはNullのまま
|
3
推敲
answer
CHANGED
@@ -9,4 +9,4 @@
|
|
9
9
|
|
10
10
|
ですので、Null対応としては、以下の何れかです。
|
11
11
|
・Null判定を行う※最も簡潔になるのがNz()
|
12
|
-
・簡易にエラーを回避する為にVariant型を使用する※
|
12
|
+
・簡易にエラーを回避する為にVariant型を使用する※NullはNullのまま
|
2
推敲
answer
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
こういったVBAの型とデータの隙間を埋めてくれる便利な関数として[NZ関数](https://support.microsoft.com/ja-jp/office/nz-%E9%96%A2%E6%95%B0-8ef85549-cc9c-438b-860a-7fd9f4c69b6c)があります。
|
7
7
|
Nullの判定と、値がNullの場合に返却する型指定する事ができるので、Null判定処理をコンパクトに纏める事が出来ます。
|
8
|
-
※さらに、値を省略した場合はコードの内容から自動的に変換してくれます。
|
8
|
+
※さらに、返却値を省略した場合はコードの内容から自動的に変換してくれます。
|
9
9
|
|
10
10
|
ですので、Null対応としては、以下の何れかです。
|
11
11
|
・Null判定を行う※最も簡潔になるのがNz()
|
1
推敲
answer
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
※NotNullの指定をしていたとしても、SQLでouter joinするとNullは返却されますから、データとしてはNullがあり得る事を前提として考えるべきですが。
|
5
5
|
|
6
6
|
こういったVBAの型とデータの隙間を埋めてくれる便利な関数として[NZ関数](https://support.microsoft.com/ja-jp/office/nz-%E9%96%A2%E6%95%B0-8ef85549-cc9c-438b-860a-7fd9f4c69b6c)があります。
|
7
|
-
Nullの判定と、値がNullの場合に返却する型指定する事ができるので、
|
7
|
+
Nullの判定と、値がNullの場合に返却する型指定する事ができるので、Null判定処理をコンパクトに纏める事が出来ます。
|
8
8
|
※さらに、値を省略した場合はコードの内容から自動的に変換してくれます。
|
9
9
|
|
10
10
|
ですので、Null対応としては、以下の何れかです。
|