次の方法で共有

リンクテーブルをデータソースにしたアクションクエリでの「引数が無効です」エラーの対応

Anonymous
2017-04-20T07:39:57+00:00

Access2016において、ファイルサーバに保存したExcel2016のデータをリンクテーブルとし、

追加クエリにてローカルテーブルにインポートして、他のテーブル(ODBC、txt)とぶつけ、

元のExcelと同じフィールドをExcel形式でエクスポートするロジックを構築しましたが、

突然「引数が無効です」エラーが発生するようになってしまいました。

追加クエリはデータシートビューで表示でき、データやフィールド設定も特に問題がないため、

以下のMSサポートの記述のエラーなのではないかと思っております。

https://support.microsoft.com/ja-jp/help/2480088

ローカルテーブルであれば、XMLインポートによるテーブル作り直しも問題ないと思いますが、

リンクの張り直しをしても改善がないため、この場合はどのような対応をしたらよろしいでしょうか。

ご教示いただけると幸甚です。

ちなみに、最適化はしましたが改善なく、DB自体の作り直しを検討しておりますが、

クエリ数が非常に多いため、若干躊躇しております。

なお、Excelをリンクテーブルとした理由は、ユーザがリアルタイムでExcelを更新すること、

ユーザのITリテラシーがあまり高くないため、使い慣れているExcelの体裁を保持したいこと、

フィールド増減の可能性があり、テーブル修正が頻発することが見込まれることからです。

どうぞよろしくお願いいたします。

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

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

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

6 件の回答

並べ替え方法: 最も役に立つ
  1. Anonymous
    2017-05-01T00:38:04+00:00

    おはようございます。

    前回も書きましたが、マクロ/VBAが組まれていると思われるので、

    その中のどんな命令でエラーが起きているのかを確認する必要があると思います。

    (クエリで起きている可能性もあるけど…)

    「引数が無効です」はわりとよく出る一般的なエラーです。

    「「引数が無効です」と出る、直して」は「車が動かない、直して」と同じで、

    漠然としすぎて実物が見えない我々にとっては手がかりが全くなくてサッパリな状態です。

    せめて「この行を実行するとエラーになります」くらいまで掘り下げていただかないと、

    私以外の人も意見を出しづらいと思いますよ。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません
  2. Anonymous
    2017-04-28T08:07:04+00:00

    ​ずっち さん、いつもコメントありがとうございます。

    .felicia さん、こんにちは。

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

    特に心当たりになることはなさそうであれば、ファイル要因の可能性を切り分けてみると良いと思うので、前回提案した、新規 Access ファイルへの既存ファイルのオブジェクトインポートを試してみてはいかがでしょうか。

    新規ファイルでも同じ問題が起きるのであれば、これまで書いていただいた内容から要因を見つけるのは難しい状況なので、差支えない範囲でさらに以下の点を追加で書いてみてください。

    ・ エラー画面のスクリーンショット

    ・ アクションクエリの種類 (削除、更新、追加 など)

    ・ アクションクエリの内容 (文章で伝えるのが難しい場合はスクリーンショット)

    Snipping Tool を使ってスクリーン ショットをキャプチャする

    マイクロソフトコミュニティでの画像の挿入法

    ※個人情報が含まれる部分は、ペイントなどで塗りつぶしてください。

    返信お待ちしています。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません
  3. Anonymous
    2017-04-25T03:56:50+00:00

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

    まとめてのレスで失礼いたします。

    Excelからローカルへの追加クエリのフィールドは、エラーが発生してから何度も検証しており、

    その追加クエリをテーブル作成クエリに変更し、新規でテーブルを作り直した後で、

    テーブルのプロパティを修正し、テーブル作成クエリを追加クエリに戻して実行もしていますので、

    Excelと追加クエリとローカルテーブルのフィールド名の差異はないと考えます。

    それから、ローカルにインポートするExcelの列は、必要なもののみに絞ってありますので、

    Excelで数式が入力されているセルは、追加クエリのフィールドからは除外されています。

    つまりExcelからのインポート対象は、純粋に値のみの列だけになります。

    テーブルのプロパティは、Excelで日付を入力する欄以外はすべて短いテキスト形式にしてあり、

    目視ではありますが、Excelに半角255文字以上のセルはなかったと思います。

    また、ちょっと記憶があいまいで恐縮ですが、文字数超過のエラーメッセージは、

    「引数が無効です」ではなかったような気がします。

    上記の作業より、原因が分からないので内部処理的なものなのかと思い、

    最初の投稿でURLを掲示しましたが、ほかに原因として思いつくものがあれば、

    ご教示いただけますと幸いです。

    また、原因不明のままであっても、エラーが出なくなる方法があればご教示ください。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません
  4. Anonymous
    2017-04-21T06:12:14+00:00

    こんにちは。

    挙げられたKBは「初回実行時のみエラーが起きる」というものですが、2回目以降はエラーが出ないですか?

    2016で同様の問題が出た記憶はないので、対象外のような気がします。

    本来「引数が無効です」は関数などに指定する引数に問題がある場合に出るメッセージです。

    なので、Excelをあれやこれやしているロジックの中のどの行でエラーが起きているのか確認する必要があると思います。

    ITリテラシーの低い人用にExcelを咬ませるのは私もまれにやりますが、

    彼らは数値の所に文字とか、日付と認識できない記入したり、好き勝手にデータを入れる事がよくあるので、

    予期せぬデータが入っているかも?

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません
  5. Anonymous
    2017-04-21T06:01:51+00:00

    ​.felicia さん、こんにちは。

    マイクロソフト コミュニティをご利用いただき、ありがとうございます。

    突然「引数が無効です」というエラーが表示されるようになったのですね。

    アクションクエリの内容がわからなかったのですが、クエリで使っているフィールド名と Excel 上のデータの項目名は一致しているのかを念のために確認してみてはいかがでしょうか。

    また、Excel 上のデータに要因があるかもしれないので、Excel のデータを分割してリンクテーブルにするとどうなるか試すのも良いかと思います。

    試しても同じ状況であれば、新規 Access ファイルを作成して、既存の Access ファイルのオブジェクトをすべてインポートする方法を試してみてはいかがでしょうか。

    引き続きこのスレッドで情報を集めたい場合は、アクションクエリの内容も書いてみてくださいね。

    この回答は役に立ちましたか?

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