ユーザーがAccess 2010にいる間、私はAccess 2016に更新されました。
データベースをMS Access 2016で一度開いて、何も変更せずに閉じました。これで、すべてのユーザーに[〜#〜] any [〜#〜]基本エラーが発生しました以下を含むVBAコード:
_StrConv (Me.FormField, vbProperCase)
DoCmd.GoToRecord
DoCmd.RunCommand acCmdSaveRecord
_
等.
しかし、それは私の側でうまく機能します。 Access 2010のすべてのユーザーにとって完全に壊れています。これを修正する方法はありますか? Access 2010に戻ったとしても、通常どちらのバージョンでも正常に機能するコードのエラーである場合、これらのエラーを解決するにはどうすればよいですか?
コンパクトと修理を試みましたが、効果はありません。
次に例を示します。Access2010では、AfterUpdate()
関数を含むテキストボックスでStrConv (Me.FormField, vbProperCase)
イベントがトリガーされると、VBAデバッガーが表示されます。エラーは次のとおりです:_Compile error: cannot find project or library.
_
以前は、まったく同じ関数がAccess 2010で正常に機能し、このコードに変更はありませんでした。約15日前のバックアップコピーで正常に動作します。
その特定のエラーメッセージが重要です。
コンパイルエラー:プロジェクトまたはライブラリが見つかりません
2016年にOffice 2010データベースを開くと、[参照]メニューの14.0オブジェクトライブラリへのVBA参照がすべて削除され、Office 2010には存在しない16.0に置き換えられました。
壊れた参照は、.mdb
は古いバージョンで開かれています。 Officeライブラリ(Word、Excelなど)への参照がある場合に発生します。最も古いバージョン(コードを実行しないバージョン)の(VB Editorで)参照を編集します。
最初:-Visual Basic Editorで「Missing:Reference」を確認します。通常は、MS Accessが新しい参照を継承し、それらを元に戻したり、下位互換性を持たせたりしません。
2番目:-OLEオートメーション参照が機能している... OLEオートメーション参照を削除し、データベースを保存/閉じる/再度開いて、再度追加する。Environ( "Username")を使用すると、時々このエラーが発生します。
MS Access 2016に追加されたいくつかの機能は、いくつかのようなものを制限します。この機能を使用するオブジェクトを変更できない場合があります。この機能を使用するオブジェクトは開きません。そのため、2016に組み込まれた新しい機能は、開くファイルを制限している可能性があります。何が変わったのか正確には言えません。