![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
No.3ベストアンサー
- 回答日時:
すべての標準テーブルのすべてのフィールドに対しNullなら0に置き換えてます。
(フィールドタイプは見てません。)そもそもNull許可しているのならNullがあってもよいように処理設計すべきだし、
0でなくてはならないのならNullを許可しないようにすべきです。
----
Sub mColGet()
Dim CAT As ADOX.Catalog
Dim TB As ADOX.Table
Dim CL As Column
'接続
Set CAT = New ADOX.Catalog
CAT.ActiveConnection = CurrentProject.Connection
'検索
For Each TB In CAT.Tables
If TB.Type = "TABLE" Then
For Each CL In CAT.Tables(TB.Name).Columns
Call mZeroSet(TB.Name, CL.Name)
Next CL
End If
Next TB
'終了
Set CAT = Nothing
End Sub
Sub mZeroSet(strTable As String, strCol As String)
Dim cn As ADODB.Connection
Dim RS As ADODB.Recordset
Dim SQL As String
'接続
Set cn = CurrentProject.Connection
'更新
SQL = "UPDATE " & strTable & " SET " & strCol & " = 0 WHERE " & strCol & " Is Null "
cn.Execute (SQL)
'終了
cn.Close
Set cn = Nothing
End Sub
確かに設計に問題がありますよね。。
ご指摘いただいたとおりだと思います。
なぜそのようなNULLデータがうまれるかというと、
その一つ前のクエリでピボットテーブルを使っていて、
(その結果をINにして再度実行しているクエリで
SUMを使っているため、NULLは入ってきてはこまるのですが)
どうしても存在しないデータにはNULLが入ってきてしまうのです。
これを0とする方法が私には思いつきませんでした。
今回は別のページで見つけたNZという関数で対応しました。
教えていただいた方法もとてもわかりやすいので、
次回はこちらで試してみたいと思います。
お手数をおかけしてすみません。。
ありがとうございました!
No.2
- 回答日時:
更新クエリを使います。
UPDATE テーブル1 SET フィールド1 = 0
WHERE フィールド1 Is Null;
この回答への補足
これだと、フィールド1が指定されてしまいますよね?
データの中にはかなりの行と列のNULLデータがあるので、
フィールドは指定したくないのですが・・・。
No.1
- 回答日時:
1.EXCELに全データを貼り付ける
2.NULL(空白)セルを「0」に置き換える
⇒置換
3.置き換えたEXCELデータをコピー
4.コピーしたデータをACCESSのテーブルに貼り付ける
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) アクセス テーブルの空白を変数に置換するボタンが作りたい 4 2022/07/08 11:19
- HTML・CSS WEBサイトの構築。表示データとWEBデザインを分離する考え方を専門用語・業界用語では何と言うか? 8 2022/09/27 09:16
- その他(データベース) pythonでsqlight勉強中、クエリー結果の利用法教えて下さい 1 2022/04/28 20:38
- その他(コンピューター・テクノロジー) 【Tableau Desktop】文字列から8桁の数字を日付型(yyyyMMdd)として取得 1 2023/07/31 10:17
- Excel(エクセル) アウトラインの小計のやり方 1 2023/03/20 11:51
- Access(アクセス) Accessのクエリで、replace関数を使い、データの中にある”をブランクに置き換えたいのですが 6 2022/06/15 14:54
- MySQL データベースの複製の仕方(mysql) 2 2023/05/30 18:24
- Perl 画像が表示でnull; this.src 1 2022/04/19 11:31
- Access(アクセス) スキルシートのエクセルの項目に 2 2023/04/04 22:41
- その他(データベース) Accessのクエリで1フィールドの抽出条件設定をNullでなく全角半角含む空白のみの文字列でない文 1 2023/04/24 15:20
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
Accessのクエリーのゼロデータ行の非表示の仕方
Excel(エクセル)
-
アクセスで『0の値以外』を表示する方法
Access(アクセス)
-
ACCESSで空白のデーターをクエリで判定/識別する方法を教えてくださ
Access(アクセス)
-
-
4
【ACCESS/必須条件とOR条件を組み合わせる】
その他(Microsoft Office)
-
5
Access テキスト型に対する指定桁での0埋め方法
その他(データベース)
-
6
アクセス VBAについて FROM句の構文エラー
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Accessでテーブルの値をテキス...
-
【Access】フォームで自動計算...
-
ExcelのデータをAccessのテーブ...
-
フォームのデータシートビュー...
-
ACCESSの既存テーブルに、EXCEL...
-
accessで重複を防ぎたい
-
ACCESSDBで、NULLデータをすべ...
-
ExcelのデータをコピーでACCESS...
-
ACCESS レーダーチャートのデー...
-
INSERT INTO ステートメントに...
-
Accessのフィールド数が255しか...
-
インポートしたシートのセル内...
-
主キーはオートナンバー型のID...
-
Accessで別途保存の画像ファイ...
-
Access 昇順・降順で並び替え...
-
アクセス エラーを数値「0」に...
-
Accessテーブルの規定値に関して
-
AccessでYes/No参照(チェック...
-
文字型フィールドの数値データ...
-
Excel 2019 のピボットテーブル...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Accessでテーブルの値をテキス...
-
Accessのフィールド数が255しか...
-
ACCESSでの改行コード
-
INSERT INTO ステートメントに...
-
ACCESSで400以上のフィールドが...
-
Access 昇順・降順で並び替え...
-
SQLServer2005のSQL文での別名...
-
【Access】フォームで自動計算...
-
ACCESSで和暦を西暦に・・・
-
accessで重複を防ぎたい
-
アクセス エラーを数値「0」に...
-
accessのレポートで元になるテ...
-
ExcelのデータをコピーでACCESS...
-
主キーはオートナンバー型のID...
-
アクセス VBAで列の入れ替...
-
Accessで、固定アルファベット+...
-
Access:リンクテーブルマネー...
-
ACCESS検索★ある文字を複数のフ...
-
アクセスのテーブルデータをCSV...
-
ACCESSでテーブルのチェックを...
おすすめ情報