Microsoft 製品に組み込まれている Visual Basic の実装。
注: この回答は自動翻訳されています。そのため、文法上の誤りや不自然な表現が含まれる場合があります。
こんにちは 由記子 横井
ご提供いただいたスクリーンショットに基づくと、この問題は、Access データベースに含まれる VBA コードが 64 ビット版 Office/Access と互換性がないために発生しています。
この問題を解決するには、以下の手順をお試しください:
1.Access を開き、Alt + F11 を押して VBA Editor を開きます。
2.VBA Editor で、Debug > Compile VBA Project に移動します。
3.コンパイラによって強調表示されたコード行を確認します。特に以下を使用している宣言に注意してください:
Declare Function
Declare Sub
4.これらの宣言を更新し、PtrSafe キーワードを追加して 64 ビット システムと互換性を持たせます。
例えば、以下のコード:
Declare Function MyFunction Lib "MyLibrary.dll" Alias "MyAlias" (MyArguments) As MyType
を、次のように変更します。
Declare PtrSafe Function MyFunction Lib "MyLibrary.dll" Alias "MyAlias" (MyArguments) As MyType
5.変更を保存し、VBA Editor を閉じます。
6.Access データベースを再度開き、問題が解決されたか確認してください。
なお、場合によっては、完全な 64 ビット互換性のために Long を LongPtr に置き換えるなど、追加の変更が必要になる場合があります。
参照: このプロジェクトのコードは、64 ビット システムで使用できるように更新する必要があります | Microsoft Learn
この情報がお役に立てば幸いです。ご不明点がございましたら、お気軽にお知らせください。
注: このスレッドに関連するメール通知を受け取りたい場合は、ドキュメントの手順に従ってメール通知を有効にしてください。