Access、VB6、データグリッドを使用した処理を行った際に、
「更新に必要なキー列の情報が足りません。」というメッセージが表示
されてしまいました。
【使用環境】
・WindowsXP SP1
・VB6
・ACCSESS2002
【発生手順】
(1)インプット用mdbのテーブルデータを
中間mdbのテーブルデータにコピー。
(2)中間mdbのテーブルデータをAccessクエリを使用し
画面出力用のデータを作成。
(3)クエリデータをデータグリッドに表示。
※1.[コード1、文字列1、コード2、文字列2、コード3]
を表示しています。
※2.コード1、コード2、コード3でプライマリキーとなっています。
(4)データグリッドで特定の文字列2のセルをクリック後、
他のセルにカーソルが移動しなくなる。
このときに、エラーメッセージが表示される。
【回避できる場合】
・エラーメッセージが表示される元となるインプット用mdbの
テーブルデータの文字列2に対し、何か変更を加えたあと、
もとに戻す。
例)あいうえお→あいうえお1→あいうえお
のように変更を加えたあと、1を削除して最初
の状態に戻す。
この状態で処理を実行すると、【発生手順】(4)でエラーが出ていた
ものがカーソルも移動することができ、エラーが発生しなくなります。
ですが、ユーザが使用する際にこのような回避はできないため、回避策と
はいえないです。
なぜ、このようなことが起こるのかや、エラーメッセージを表示させないような
回避策があれば教えていただけないでしょうか。
A 回答 (5件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
joinを行った結果に対して更新はアクセスの場合はできない仕様になっていたと思います。
(データグリッドの自動更新を使用しては)クエリを変更できない場合はレコード移動などのイベントを拾って手動で更新クエリを発行するなどの対策が必要です
ご回答ありがとうございます。
データグリッドは表示のみで、データグリッドに入力したデータをアクセスのテーブルに更新するというようなことはしていません。
データグリッドに表示し、あるレコードのセルにカーソルを当てた後、そのレコードの上や下にカーソルを移動したときに、エラーメッセージが出てしまうのです。
単なる表示だけなのに、何が原因なのでしょう。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) AccessVBAで降順にするテーブル作成クエリを使用して作成したテーブルを削除し同一のテーブル作成 1 2023/01/06 11:17
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- Excel(エクセル) 表内で、Enterキーで横→行の最後入力したら次の行の先頭に移動するマクロを作りたい 3 2022/05/01 21:19
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- Visual Basic(VBA) Excel VBA 書式変更で困ってます。 オートフィルターの日付フィルターを用いて データの絞り込 2 2022/07/26 22:16
- Excel(エクセル) エクセルの数式で教えてください。 1 2023/02/02 10:20
- Excel(エクセル) ネットワーク上のエクセルとリンクしている時にデータ更新をvbaで、refresh Allで行う場合の 2 2023/04/10 05:39
- Excel(エクセル) 【VBA】指定フォルダに格納中のテキストファイルをエクセルで処理し結果のエクセルを新規フォルダに保存 1 2022/03/25 14:19
- Access(アクセス) Access 登録ボタンからサブフォームの更新 1 2022/07/22 10:23
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
テーブルのレコード削除ができません
SQL Server
-
ADOのCursorLocationプロパティ
Visual Basic(VBA)
-
レコードを保存するコード アクセスvba
その他(Microsoft Office)
-
-
4
アクセスVBAで既に開いているエクセルを閉じたい
Yahoo!ショッピング
-
5
Access コンボボックスの値をクリアしたい。
PowerPoint(パワーポイント)
-
6
ACCESS ADOでupdateが効かない
その他(データベース)
-
7
アクセスで数値型のフィールドにNullをいれたい
その他(データベース)
-
8
Access サブフォームでの選択行の取得
その他(データベース)
-
9
ACCESSのフォーム、開くんですが、見えないようにするには
Access(アクセス)
-
10
Accessで、フォームからフォームへ値を引き継ぐやり方
Access(アクセス)
-
11
Accessのテーブルデータを一気にVBAで追加したい・・
その他(データベース)
-
12
access2003 クエリSQL文について
その他(プログラミング・Web制作)
-
13
親フォームからサブフォームのレコードソースを設定
Access(アクセス)
-
14
アクセス VBAについて FROM句の構文エラー
Access(アクセス)
-
15
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
16
ACCESSでタイトルバーを非表示にする方法
Access(アクセス)
-
17
ACCESSのフォームで列固定?
Access(アクセス)
-
18
accessのレポートであとから他のテーブルのフィールドを追加する方法
Access(アクセス)
-
19
ACCESSでテーブルをコピーしようとすると3211のエラーが出てしまう
Access(アクセス)
-
20
データベース操作時エラーについて
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBScript+SQLServerでcountがう...
-
access count数を変数に格納
-
Excel 2019 のピボットテーブル...
-
【Access】フォームで自動計算...
-
アクセスクエリの計算
-
エクセルVBAで5行目からオート...
-
列が存在しないと言われる
-
Accessでテーブル名やクエリ名...
-
「直需」の意味を教えてください
-
Oracle 2つのDate型の値の差を...
-
Accessのフィールド数が255しか...
-
INSERTできるレコード数を制限...
-
MS ACCESS 商品価格変更時の該...
-
Oracleのビュー作成時に「指定...
-
DBのタイプの指定とサイズにつ...
-
INSERT INTO ステートメントに...
-
Access テキスト型に対する指定...
-
テーブルの存在チェックについて
-
ACCESSに同時アクセス(編集)を...
-
ACCESSで400以上のフィールドが...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
access count数を変数に格納
-
「更新に必要なキー列の情報が...
-
access2000でつまづいてます
-
Accessの更新前処理について。D...
-
AceessVBA 非同期処理について
-
半角スペースの置換でエラーを...
-
ACCESSのFindコマンドが遅い
-
Access VBAで自動連番を振るには
-
[Access]削除時のエラーメッセ...
-
ACCESS、EXCELの限界?
-
VBScript+SQLServerでcountがう...
-
AccessVBAについて
-
Set rst = db.OpenRecordset("S...
-
VisualBasic6.0 SP3 (←注) Acc...
-
Access VBA
-
cobolのカーソルについて
-
VB2010のSQLを使ったレコードカ...
-
ADOでループすると1レコードず...
-
VB2005でAddNew()
-
access vbaでクエリデータの中...
おすすめ情報