質問: access2000形式からaccess2007形式への変更について access2000形式からaccess2007形式への変更について access2000で作ったmdbをaccess2007形式に変更しようと考えています。 このmdbをaccess2007形式で保存するのと、access2007の空のmdbを作ってここにデータをすべてインポートするのとの違いは何でしょうか? 通常はどちらで行うのでしょうか? 以上、よろしくお願いいたします。
回答: > 通常はどちらで行うのでしょうか? 必要なものが「テーブルに格納したレコード(=データ)」だけでしたら、 どちらでも大差はないかと思います。 ただ、「通常」は『フォーム』や『マクロ』『モジュール』なども含めた データベースシステム一式を引き継ぐはずですので、その場合は access2007形式での保存(データベースの変換)を行う、というのが 一般的かと思います。 理由としては、「インポート」の対象は『テーブル』『クエリ』『フォーム』 といった『オブジェクト』(accessobject)に限られるのに対して、 「データベースの変換」の場合は、access2000時に行った『起動時の 設定』や『オプション』(dao.databaseのpropertyオブジェクト)も含めて 引き継がれること、が挙げられるかと思います。 例えば、mdbファイルの展開時に自動でフォームを開かせる方法には 「autoexecマクロの使用」と「起動時の設定」の2通りがありますが、 後者で対応していた場合、インポートしただけではフォームが自動で 開かなくなります(→再度『起動時の設定』でフォームを指定する必要 が生じる、と)。 (データベースの変換なら、どちらの方法でフォームを開いていたと しても、追加の作業は発生しません) ※vbaやマクロの互換性の問題による改修が必要になる可能性は、 どちらの方法を採ったとしても、同様にあります。 (そして、ここの負荷が大抵かなり重いのですが・・・(汗))