次の方法で共有

access 実行時に、「すべてのデータをテーブルに追加できませんでした。」のエラー

Anonymous
2021-08-05T08:18:59+00:00

実行時に、以下のエラーがでます。

「すべてのデータをテーブルに追加できませんでした。

 キー違反のため、0件のレコードのデータが失われ、0件のレコードが削除されました。

 * データが失われたときは、・・・」

発生箇所は、

DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel12Xml, "W_RYUIKI", import_file, True, "A1:E99999"

です。

今回読み込ませたimport_fileは、1レコードのみのエクセルファイルですが、

これを3レコードのデータのファイルにして読み込ませると、何故かエラーは出ません。(2レコードではエラー)

また、以前ここで教えていただいた、「W_RYUIKI」テーブルをエクスポートし、新しいテーブルとしてインポート

する方法を実行しても、変わりありませんでした。

原因と対応方法を教えてください。

Microsoft 365 と Office | アクセス | 家庭向け | Windows

ロックされた質問。 この質問は、Microsoft サポート コミュニティから移行されました。 役に立つかどうかに投票することはできますが、コメントの追加、質問への返信やフォローはできません。

0 件のコメント コメントはありません

5 件の回答

並べ替え方法: 最も役に立つ
  1. Anonymous
    2021-08-10T10:12:24+00:00

    返信ありがとうございます。

    [W_RYUIKI]テーブルですが、

    主キー:定義していません。

    参照整合性制約:定義していません。

    インデックス:作成していません。

    コマンド実行前の[W_RYUIKI]テーブルは、空、つまり、0件です。

    このコマンドで入れようとしているデータ(import_file)は1件だけです。

    つまり、重複は発生していません。

    フィールドのデータ型についてですが、

    5列で、全て数値型で、

    フィールドサイズは、前から、整数型、整数型、倍精度浮動小数点型、倍精度浮動小数点型、倍精度浮動小数点型です。

    入れようとしているデータは、「1, 0, 17180, 1, 1.44」です。

    なお、このテーブルは以前、「引数が無効です」のエラーが出て、ここに問い合わさせていただき、

    sk.exe様に「XMLのエクスポートをして、テーブルを作り直す」対応を教えていただき、

    解決した経緯のあるテーブルと同じテーブルです。

    その件は解決したものの、何か関連はありませんでしょうか。

    1 人がこの回答が役に立ったと思いました。
    0 件のコメント コメントはありません
  2. Anonymous
    2021-08-05T08:22:21+00:00

    すみません。補足です。

    エラーはでますが、1レコードのデータは、正常にテーブルに読み込めています。

    1 人がこの回答が役に立ったと思いました。
    0 件のコメント コメントはありません
  3. Anonymous
    2021-08-12T08:59:21+00:00

    試しに、今度は「XMLのエクスポート・インポート」でなく、

    テーブルを完全に削除して、新規作成し直してみたら、エラーが出なくなりました。

    0 件のコメント コメントはありません
  4. Anonymous
    2021-08-10T08:07:37+00:00

    > 「すべてのデータをテーブルに追加できませんでした。>  キー違反のため、0件のレコードのデータが失われ、0件のレコードが削除されました。>  * データが失われたときは、・・・」

    Access が表示したそのシステムメッセージの省略した部分
    答えがあるのではないでしょうか。

    ・[W_RYUIKI]における主キーに当たる列の値が重複しているレコードを含む
     ワークシートをインポートしようとしている。

    ・[W_RYUIKI]はあるテーブルに従属する子テーブルであり、
     親テーブルとの間に参照整合性が定義されている。
     (この場合、[W_RYUIKI]側の外部キーに当たるフィールドに、
     親テーブル側の主キーに存在しない値を格納することはできない)

    とりあえず、[W_RYUIKI]のインデックス定義と
    インポートしようとしているワークシートの記録内容を
    検証されることをお奨めします。

    0 件のコメント コメントはありません
  5. Anonymous
    2021-08-06T08:12:59+00:00

    念のため、もう一点、補足です。

    「W_RYUIKI」テーブルは、空テーブルです。

    つまり、実行前はデータ0件の状態、実行後はデータ1件の状態です。

    0 件のコメント コメントはありません