access24 コンパイルエラーについて

範子 三村 0 評価のポイント
2026-05-28T12:13:20.5333333+00:00

access2024のカード版購入

1台はインストール完了2台目にインストールしてaccessを起動して、データ入力を実行しようとすると次のメッセージが出て何もできません

ユーザーの画像

2台目のPCはオフィス2024がインストール済みPCも64ビットです。accessデータは旧のPC(access2016)から移しました。

対処方法を教えてください

開発者テクノロジ | Visual Basic for Applications
0 件のコメント コメントはありません

1 件の回答

並べ替え方法: 最も役に立つ
  1. Jayden-P 26,280 評価のポイント Microsoft 外部スタッフ モデレーター
    2026-05-28T12:33:02.5666667+00:00

    注: この回答は自動翻訳されています。そのため、文法上の誤りや不自然な表現が含まれる場合があります。

    こんにちは  @範子 三村

    ご提供いただいたスクリーンショットに基づくと、この問題は、Access データベースに含まれる VBA コードが 64 ビット版 Office/Access と互換性がないために発生しています。 

    参考になりそうな記事を見つけました。

    この問題を解決するには、以下の手順をお試しください: このプロジェクトのコードは、64 ビット システムで使用できるように更新する必要があります | Microsoft Learn 

    1. Alt + F11 キーを押して VBA エディターを開きます。
    2. VBA エディターで、[デバッグ] > [VBA プロジェクトのコンパイル] を選択します。
    3. コンパイラによってハイライト表示されたコード行を確認します。特に、以下の宣言に注意してください。

    Declare Function

    Declare Sub

    1. これらの宣言を更新し、64 ビット システムと互換性を持たせるために PtrSafe キーワードを追加します。

    例えば、以下のコードです。

    Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

    以下のように変更します。

    Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As LongPtr)

    1. 変更を保存し、VBA エディターを閉じます。
    2. Access データベースを再度開き、問題が解決したかどうかを確認します。

    なお、場合によっては、完全な 64 ビット互換性のために Long を LongPtr に置き換えるなど、追加の変更が必要になる場合があります。 

    ぜひ試してみて、うまくいったかどうか教えてください。お返事をお待ちしています。


    注: このスレッドに関連するメール通知を受け取りたい場合は、ドキュメントの手順に従ってメール通知を有効にしてください。

    この回答は役に立ちましたか?


お客様の回答

質問作成者は回答に "承認済み"、モデレーターは "推奨" とマークできます。これにより、ユーザーは作成者の問題が回答によって解決したことを把握できます。