2013-11-06

Access 2010データベースファイルを2003にダウングレードする方法

Access 2010の環境で開発する際、新しいファイル(ACCDB)は古いAccessでは使えないため、旧形式のMDBファイルに変換する必要性がある。 但し、変換されたファイルに、VBAコードはうまく変換できない/VBAコードが削除されることが多々ある。

故に、次のステップで変換すると、無事(?)に変換できる。

1. VBAのエクスポート

Accessファイルに書き込まれているVBAコードを、全てのフォーム、レポート、標準モジュールを含めて、すべて別々にエクスポートして保存しておいてください。

やり方は簡単。AccessのVBA Editorを開いて、プロジェクトエクスプローラの中にあるそれぞれフォーム名に右クリックして、「ファイルのエクスポート(E)...」をクリックして、コードを.clsファイルにエクスポートする。無論、標準モジュールも同様。

※標準モジュールはバックアップする必要ないかもしれないが、一応…

2. コード保持設定の変更

Accessの編集画面に戻り、それぞれフォームとレポートのプロパティの「コード保持」を「いいえ」に変更する。

上記の設定をすると、保存する時にVBAコードが削除されるので、ステップ1のVBAコードエクスポートをちゃんと確認してから進めなさい。

3. 2003形式ファイルに保存

別名で保存をして、「Access 2002-2003形式(MDB)」に保存する。

4. Access 2003でVBA再導入

Access 2003で先保存したMDBファイルを開ける。そして、VBA Editorでステップ1でエクスポートしたコードファイル(cls)をそれぞれのフォームやレポートにインポートする。

フォームやレポートも同じようにインポートできますが、もし、できない場合はエクスポートしたプログラムはエディタ(メモ帳や秀丸など)で開くことができるので、そのままコピー&ペーストを行えばいいでしょう。先頭に「VERSION 1.0 CLASS」や「BEGIN」~「END」、「Attribute VB_~」などが書かれているので削除してしまいましょう。
とか言われたので、入れる時に注意する必要があるかもしれない。

参考URL: Access 2010から2003へ下位バージョンへ変換する方法
 

あと書き

Access 2010で開発が大丈夫の場合、最悪Access 2007/2010 Runtime Libraryをインストールすれば実行できる…但し編集できないので、最低限Access 2010を所有するPCが1台必要だ。もし実行の方で細かくプログラムの改正や編集する必要がない場合、Runtime Libraryだけで十分と思います。
コメントを投稿

GoogleCode-Prettify

SyntaxHighlighter

人気の投稿