VBAで下記のように配列に設定したNULL値を判定しようとしました。
Dim str()
ReDim Preserve str(2)
str(0) = "aaa"
str(1) = Null
str(2) = "bbb"
以下(1)、(2)の分岐処理ではNullと判定されませんでした。
どのように判定すれば良いでしょうか?
(1)
If str(1) = Null Then
Debug.Print "Null値です"
End If
(2)
If str(1) = "" Then
Debug.Print "Null値です"
End If
No.3ベストアンサー
- 回答日時:
解決方法としては、他の方がお書きの通り、isNull() を使うわけですが、
if str(1) = Null Then などという文を書くと言うことは、Nullに対して誤解があるからだと思います。Nullは値ではなく、「有効な値が入っていない」「無効な値が入っている」ということを示すキーワードです。Null に対してどんな演算をしても結果は無効なので、Null になります。
Null = Null の結果=> Null
Null = 何かの値 の結果=> Null
Null <> 何かの値 の結果=> Null
あなたが本当にstr(1)に代入したかったのは、NullなのかEmptyなのか""なのか、もう一度考え直してはどうでしょう。この3つは全く別の物です。
ご回答ありがとうございます。
DBからレコードを取得した際にカラムがNullであるかどうかを
判定する際に困っていました。
ご指摘頂いたのNull、Empty、""の違いをを勉強し直そうと思います。
No.2
- 回答日時:
if isnull(str(1)) then Debug.Print "Null値です"
if typename(str(1))="Null" then Debug.Print "Null値です"
こんな所でしょうか
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# プログラミングの授業の課題です 1 2023/01/17 22:15
- PostgreSQL DBFluteについて質問です。 環境:PostgreSQL java8 前提:webアプリケーショ 1 2022/07/07 00:49
- Excel(エクセル) 2つのVBAを一緒にしたら機能しなくなりました(エクセル) 7 2022/06/02 12:41
- C言語・C++・C# c言語 プログラムのエラー 1 2023/02/11 20:31
- PHP PostgreSQLからCSV形式でエクスポートする際にカラム内の改行をとる方法 1 2023/02/22 10:05
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- C言語・C++・C# str[j++]の意味 2 2022/08/30 16:20
- Visual Basic(VBA) VBAの繰り返し処理について教えてください。 3 2022/08/02 13:21
- その他(コンピューター・テクノロジー) 【Tableau Desktop】文字列から8桁の数字を日付型(yyyyMMdd)として取得 1 2023/07/31 10:17
- C言語・C++・C# c言語の問題です 3 2023/01/10 16:15
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
配列でデータが入っている要素を求める方法
Visual Basic(VBA)
-
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
SQL文で パラメータが少なすぎます エラー
Access(アクセス)
-
-
4
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
5
On ErrorでエラーNoが0
Visual Basic(VBA)
-
6
【Access】クエリで抽出したデータをCSV形式でエクスポートできますか?
Access(アクセス)
-
7
動的配列が存在(要素が有る)か否かを判定できますか?
Visual Basic(VBA)
-
8
配列の要素がすべてカラかどうかの判断
Visual Basic(VBA)
-
9
配列で格納したものをmsgboxで表示する方法について
Access(アクセス)
-
10
エクセルVBAでTransposeの不思議
その他(Microsoft Office)
-
11
日付型のフィールドに空白を入れる方法を教えてください
その他(データベース)
-
12
エクセルVBAのIf,Then 構文でOr条件とAnd条件の結合方法?
Excel(エクセル)
-
13
エクセルへのデータの貼付時に書式が反映されない!
Visual Basic(VBA)
-
14
VB6でユーザー定義型がNothingかどうか調べるには?
Visual Basic(VBA)
-
15
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
16
ACCESS2007 VBA 「INSERT INTO~」について
PowerPoint(パワーポイント)
-
17
配列の参照渡しで型が一致しません。
Visual Basic(VBA)
-
18
VBA(エクセル)で自動的にボタンをクリックさせるには
その他(プログラミング・Web制作)
-
19
全ての変数を一気にリセットする方法はありますか?
PowerPoint(パワーポイント)
-
20
access2003 クエリSQL文について
その他(プログラミング・Web制作)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C言語 exitの使い方
-
数字の位ごとの値を表示するプ...
-
フォームを開くときに、コンボ...
-
DWORDって
-
VB6.0-整数と余りを求める
-
1つ前の値を変数に保存する方法
-
VBAで配列のNULL判定
-
足して100になるような乱数のア...
-
Access2003 オートナンバーの現...
-
世界のナベアツ
-
C言語でCLAMP(a,b,c)
-
相関係数p値の出し方
-
Excel-vba 文字列と変数を...
-
スピンボタンで小数点
-
10進数をアスキーコードに変換
-
C#でのIF文 時間比較のやり方
-
バッチファイルで正規表現を使...
-
コンボボックスの名前を変数に...
-
4択問題のプログラムでランダム...
-
データ構造のmapとは?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C言語 exitの使い方
-
フォームを開くときに、コンボ...
-
Excel-vba 文字列と変数を...
-
エクセルのマクロについて教え...
-
VB6.0-整数と余りを求める
-
足して100になるような乱数のア...
-
数字の位ごとの値を表示するプ...
-
VBAで配列のNULL判定
-
世界のナベアツ
-
ラジオボタンの値の取得につい...
-
相関係数p値の出し方
-
1つ前の値を変数に保存する方法
-
VBAの定数の使い方で、計算値を...
-
DWORDって
-
4択問題のプログラムでランダム...
-
スピンボタンで小数点
-
Access2003 オートナンバーの現...
-
C#で動的にコントロールを取得...
-
UWSCのcallについて
-
フリーランタイマーの時間差分...
おすすめ情報