こんなエラーが出たw
Microsoft Accessでは、現在のデータベース形式で保存されたAccessデータベースまたはMicrosoft Office Excelブックへのリンクはサポートされていません。
このエラーが出た経緯はこんな感じ。
Accessバージョン: 2016
拡張子: .mdb
リンクしようとしているExcel: Excel.application を使用し、このmdbで作成したExcelファイル
Excel拡張子: .xls
Excelバージョン: 2016
Excelファイルの作成で拡張子を.xlsにしても、Access側では2007以降のExcelファイル形式として認識する模様。
言われてみれば、使用してる Excelバージョンも2007以降なんですよねσ(^_^;)
この場合、私的には2通りの方法がありますw
1. mdbをaccdb形式に変更
リンクしたいmdbを2007以降のバージョンにすることで解決します。
欠点は2007以降のバージョンでないと動かないので、別PCで動かす場合に2007以降がなければruntime版も視野に入れる必要が発生します。
…runtime版の場合、不足部品が多いので動作確認は必須ですねぇ〜。
2. vbaを使用してExcelデータを取得
Excel.applicationを活用して、変数へ Excelデータを突っ込んで処理をする方法です。
こっちの利点はruntime版を意識する必要はないですが、処理時間が掛かるのがネックですねぇ〜。
リンクしてしまえば、クエリで一発で出来るものが1行単位になるので…。う〜んな感じw
実際に使うPC環境に合わせるのが一番楽なので(インストールは何気に面倒w)、それに合わせてPGを組むのが良いですねσ^_^;
特にruntime版の場合は、マクロセキュリティの設定はregedit(レジストリエディター)を開いて信頼出来るパスを追加する対応もプラスしますしね。
ということで、なかなかに悩ましい匂いがするエラー内容という感じでしたw
Accessで結構Excelファイル操作することが多いので、少しでもお役に立てられたら…と思います♪
参考hp
Access2007で出力したxlsファイルの中身はxlsx? - まりふのひと
ではでは!