![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
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で空白のデーターをクエリで判定/識別する方法を教えてくださ
Access(アクセス)
-
7
【ACCESS】フォーム名/コントロール名を文字列型変数で指定するには
Access(アクセス)
-
8
accessの SQL文 INSERT命令
Access(アクセス)
-
9
レコードを保存するコード アクセスvba
その他(Microsoft Office)
-
10
ACCESSのSQLで、NULLかNULLでないかの判定
その他(データベース)
-
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
アクセスでテキストボックスの値が空白だったら
Access(アクセス)
-
18
Accessdでの「トランザクションが多すぎる」エラーとは何?
その他(データベース)
-
19
VBAのAccessでDATE型のINSERT
その他(データベース)
-
20
ADOを使ったDBアクセス後のメモリ解放
その他(データベース)
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel 2019 のピボットテーブル...
-
エクセルVBAで5行目からオート...
-
Excelの表、重複データ2行を1...
-
アンドロイド おサイフケータイ...
-
PC-98でHDDに複数OSを入れる...
-
2行目を表示できますか?
-
一覧表から定形フォーマットに...
-
必須入力項目と入力必須項目
-
VBAで複数の数式セルを最終行ま...
-
APN設定について教えていただけ...
-
一旦httpsに入ると抜け出せない
-
EXCELで積上げ縦棒グラフと折れ...
-
エクセルでのお小遣い帳の作り方
-
Accessの表形式のフォームについて
-
肥満体で彼女いない歴=年齢で...
-
指定した項目の列削除
-
ブラウザの「戻る」ボタンは何...
-
Accessで数値型にNULLをInsert...
-
Joy To Keyのマウスやキーボー...
-
datファイルから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関数を使うと未...
-
空白をそのままインポートする...
-
他テーブルで一致する列から名...
おすすめ情報