![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
AccessVBAで数値型にNULLをInsertするとエラー(3134)になりますが、
その項目は必須項目にはしたくないので、
Insertする前にNULLが飛んできます。
そういった場合は、NULLかどうか判定して明示的に0をセットしてからInsertする方法しかないでしょうか。
あくまで取扱う情報は数値なので、数値型にしたいのですが、
NULLの可能性もある場合はテキスト型にするのが一般的なのでしょうか。
何か良い方法がありましたら教えてください。
尚、まだDBにはテストデータしか入っていないので、テーブルの変更は問題ありません。
No.2ベストアンサー
- 回答日時:
> AccessVBAで数値型にNULLをInsertするとエラー(3134)になりますが、
エラー(3134)は「構文エラー」ですから
テーブルの問題ではありません。
INSERT INTO テーブル ( テキスト項目, 数値項目 )
VALUES ('ABC', 100);
のようになるべきところ、
数値項目に代入する値が NULL のため
VALUES ('ABC', );
になっているためでしょう。
VALUES ('ABC', NULL);
になるように SQL を組み立ててください。
例)
Nz(Me.テキストボックス名,'Null')
とか,
あるいは、このような関数をかませるとか。
Function SQLNumber(Value As Variant) As String
If IsNumeric(Value) Then
SQLNumber = Value
Else
SQLNumber = "'Null'"
End If
End Function
標準モジュールで関数を用意してNullが飛んできたら明示的にNullをセットするようにしてエラーが出なくなりました。
ありがとうございます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(コンピューター・テクノロジー) 【Tableau Desktop】文字列から8桁の数字を日付型(yyyyMMdd)として取得 1 2023/07/31 10:17
- MySQL 下の画像はSQLの4大命令の性質をまとめたものであるらしいです UPDATE INSERT DELE 1 2023/06/07 15:36
- Access(アクセス) アクセス テーブルの空白を変数に置換するボタンが作りたい 4 2022/07/08 11:19
- PHP PHPでCSVを出力するさいに、ループの中で前の行の値を変更したい 3 2022/10/27 17:44
- PHP ここでの ②if($su_d<>"")の比較演算子 を使う理由は 1 2022/03/26 02:33
- MySQL エラー 1068 (42000): 複数の主キーが定義されていますエラー 2 2022/11/17 04:36
- MySQL 次の時間帯の勝率の合計を求めるSQL文 1 2023/07/04 17:12
- Visual Basic(VBA) ACCESS DAO で不要なテーブルのフィールド(列)の削除 4 2022/06/23 12:13
- その他(データベース) Accessのクエリで1フィールドの抽出条件設定をNullでなく全角半角含む空白のみの文字列でない文 1 2023/04/24 15:20
- MySQL PHPとMySQLを使った掲示板の作り方 1 2022/06/02 13:00
このQ&Aを見た人はこんなQ&Aも見ています
-
「どうして捨てられないの?」前妻の物を捨てられない男性の心理って?
前妻の物を捨てられない理由に加え、捨てるための手段はあるのかを専門家に聞いてみた!
-
アクセスで数値型のフィールドにNullをいれたい
その他(データベース)
-
日付型のフィールドに空白を入れる方法を教えてください
その他(データベース)
-
Access VBAで int型にnullを入れる方法について
Windows Vista・XP
-
-
4
Access サブフォームでの選択行の取得
その他(データベース)
-
5
SQL文で パラメータが少なすぎます エラー
Access(アクセス)
-
6
ACCESSのSQLで、NULLかNULLでないかの判定
その他(データベース)
-
7
【ACCESS】フォーム名/コントロール名を文字列型変数で指定するには
Access(アクセス)
-
8
レコードを保存するコード アクセスvba
その他(Microsoft Office)
-
9
ACCESSで空白のデーターをクエリで判定/識別する方法を教えてくださ
Access(アクセス)
-
10
accessの SQL文 INSERT命令
Access(アクセス)
-
11
アクセスのエラー「クエリには出力フィールドが1つ以上必要です。」
その他(Microsoft Office)
-
12
テキストボックスのvalueとtextの違い
Visual Basic(VBA)
-
13
Access 最後のレコードに到達するまでループ処理を行う方法
Access(アクセス)
-
14
VBで使用するAccessのSQL(INSERT文)
その他(データベース)
-
15
Access テキスト型に対する指定桁での0埋め方法
その他(データベース)
-
16
Accessでレコードを別テーブルへコピーするには
Access(アクセス)
-
17
Accessdでの「トランザクションが多すぎる」エラーとは何?
その他(データベース)
-
18
VBAのAccessでDATE型のINSERT
その他(データベース)
-
19
ADOを使ったDBアクセス後のメモリ解放
その他(データベース)
-
20
アクセスでテキストボックスの値が空白だったら
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel 2019 のピボットテーブル...
-
エクセルVBAで5行目からオート...
-
Oracle 2つのDate型の値の差を...
-
access2000:フォームで入力し...
-
Access テキスト型に対する指定...
-
セルの右クリックで出る項目を...
-
空白をそのままインポートする...
-
複数のレコードを1つのレコード...
-
SUBSTRING 関数に渡した長さの...
-
必須入力項目と入力必須項目
-
Excel 関数
-
アンドロイド おサイフケータイ...
-
VBAで複数の数式セルを最終行ま...
-
エクセルグラフの凡例スペース
-
ORACLE SQL 文末 文字列 削除の...
-
ピボットテーブルについて 列フ...
-
APN設定について教えていただけ...
-
BIOSでハードウェアの仮想化を...
-
INSERT文(2)について
-
Accessレポートで特定条件で改...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel 2019 のピボットテーブル...
-
エクセルVBAで5行目からオート...
-
Access テキスト型に対する指定...
-
Oracle 2つのDate型の値の差を...
-
エクセルグラフの凡例スペース
-
SUBSTRING 関数に渡した長さの...
-
ORACLEでLONG項目からCHAR項目...
-
必須入力項目と入力必須項目
-
セルの右クリックで出る項目を...
-
BIOSでAHCIに設定したいが、項...
-
複数のレコードを1つのレコード...
-
APN設定について教えていただけ...
-
VBAで複数の数式セルを最終行ま...
-
2行目を表示できますか?
-
Accessで数値型にNULLをInsert...
-
access2000:フォームで入力し...
-
SQLでの変数の扱いについて
-
SELECT文でLEFT関数を使うと未...
-
空白をそのままインポートする...
-
他テーブルで一致する列から名...
おすすめ情報