タイトル | : Re: 自動的にAccess2000形式に変換したい |
記事No | : 15458 |
投稿日 | : 2012/04/16(Mon) 16:30 |
投稿者 | : 魔界の仮面弁士 |
> VB6のDAO3.6へ作り直しています。 DAO 3.6 を使う場合、VB6 の SP5 以上が必要となります。もっとも、 相手が Win7 である以上は SP6 を使うことになるでしょうけれども。
また当然、実行環境にも DAO 3.6 が必要となります。(Access は無くても良い)
なお、Access 固有の機能(標準モジュールやフォームなど)を使っていた場合、 それらの部分はコンバートされませんので、変換後のファイルを Access で開いた場合、バージョン違いだと誤解されて、 追加の変換処理が要求されることがあります。
> mdbを自動的にAccess2000形式に変換したいのです。 DAO や JRO の場合は、「CompactDatabase メソッド」を使います。 たとえば下記のようなコードです。
Const dbLangJapanese = ";LANGID=0x0411;CP=932;COUNTRY=0" Const dbVersion40 = 64 CreateObject("DAO.DBEngine.36").CompactDatabase oldMdbPath, newMdbPath, dbLangJapanese, dbVersion30
上記の他、レイトバインドせずに参照設定で使う方法もあります。
パスワード付mdbなどでは追加の記述が必要になりますが、 検索すれば具体的なサンプルも見つかるかと思いますので、 Access VBA のヘルプやここの過去ログ等にて、 「CompactDatabase」というキーワードを検索してみてください。
|