
Accessの移行について、教えて頂けないでしょうか。
###前提・実現したいこと
Access 2002(32ビット版)で作成されたmdbを、Aaccess 2016(32ビット)で動作させる為に移行したいです。
2017/5/4 9:35 追記
下記で行ったmdbをaccdbに変換する方法に間違いがありましたらご指摘頂けないでしょうか。
Access 2010(32ビット) で、mdbをaccdbに変換、mdeはaccdeに変換させました。
mdeを参照していた所は、accdeを参照するようにVisual Basic of Applicationsで修正しました。
Access 2010上では動作するようになりました。
###発生している問題・エラーメッセージ
Aaccess 2016で、そのaccdbを動かそうとすると、エラーが発生して実行できない状態です。
「指定した式に、MicrosoftAccessが見つけることができない関数が含まれています。」
とポップアップが表示されて、OKボタンを押すと
マクロのシングルステップ autoexec プロシージャーの実行で エラー2425
が発生しているとポップアップが表示されます。
autoexecの記述もなく、マクロで呼び出されている記述が見つかりません。
どこから呼び出されているかわかっておらず、表示されているFunction名で
起きている所は確認しました。
DoCmd.RunCommand(acCmdAppMaximize)
という処理が1行のみでした。
気になっているのが、Function名、Sub名に日本語が使用されており
日本語の関数名を使用した旧Accessで作られたmdbを変換すると、エラーの原因になると
書いている記事を見つけました。これがエラーの要因でしょうか。
全マクロ停止ボタンを押して、エラーのポップアップを閉じると
「Visual Basic of Applications のプロジェクトが破損しています。」
というメッセージが表示されて、Visual Basic EditerでVBのコードが開くことができません。
###試したこと
autoexecでエラーが発生している、Functionの中にある
DoCmd.RunCommand(acCmdAppMaximize)をコメントアウト化したが、エラーはかわりませんでした。
Functionの戻り値をBooleanから、Objectに変更する方法を試しましたが、エラーはかわりませんでした。
2017/5/4 9:35 追記
現在は、最初に起動するaccdbの参照しているファイルを1つずつ解析を行って
autoexecを呼び出している箇所と特定する作業をしております。
###補足情報(言語/FW/ツール等のバージョンなど)
開発している環境:Windows Xp Pro(32ビット) Sp3
Access2002と、Access2010をインストールしてmdbを、accdbに変換する作業を実施。
複数のmdbで構成されていてmdbから、他のmdb呼び出し毎にAccessを新規で起動させて動作する
設計になっています。
動作テスト環境:Windows 10 Pro(64ビット)
Access 2016をインストールして、上記で変換したaccdb一式をコピーしてテストを実施。
エラーが出ていて実行に至っておりません。
よろしくお願い致します。


回答2件
あなたの回答
tips
プレビュー