同じMdbファイルをAccess2000の入ったPC・Access2010の入ったPC・Access2013の入ったPCで使用する必要があります。
オリジナルはAccess2000で作成したもので、通常であればAccess2010・Access2013でも使用できるはず・・・
しかし、Access2010・Access2013で開くとVBAのコンパイルエラーがでます。
そこで、Access2010でエラーのでたVBAの部分を削除して新たに書き直すとAccess2010では正常に動きます。
しかしながら、Access2000とAccess2013では同じようにエラーがでます。
Access2013で修正した場合はAccess2013でのみ正常に動き、Access2000とAccess2010ではエラーがでます。
つまり、作成したものと同じバージョンのAccessでないと正常に動かないということです。
次にエラーのでる部分に注目してみると、フォームのフィールド名がリンク元のテーブルのフィールド名(レコードソース)と異なっている部分に書いてあるVBAのところでした。
---------------------------------------------------------------------------------------------
テーブル(出荷予定)
ID 入力日 製品名 得意先 出荷日 備考
フォーム(出荷予定入力)
ID 入力日 製品名 得意先 出荷予定日 備考
----------------------------------------------------------------------------------------------
このようにテーブルとそれに入力するためのフォームがあるのですが、フォームの”出荷予定日”に過去日付の場合エラーメッセージが出るようにVBAを書いています。
(厳密には、これはサブフォームで別のフォームに埋め込んであるのですが・・)
----------------------------------------------------------------------------------------------
Private Sub 出荷予定日_AfterUpdate()
If CDate(出荷予定日) < CDate(Format(Now, "yyyy/MM/dd")) Then
'過去日付
If MsgBox("過去日付です。よろしいですか?", vbOKCancel) = vbCancel Then
出荷予定日 = ""
出荷予定日.SetFocus
Exit Sub
End If
End If
End Sub
-----------------------------------------------------------------------------------------------
こんな感じです。同様に”入力日”にも同じVBAを書いているのですが、こちらではエラーは起きません。
確認のためフォームのフィールド名、”出荷予定日”をテーブルと同じ”出荷日”に変えてみるとエラーは起きなくなりました。
しかし運用上、フォームのフィールド名は”出荷予定日”としたいです。また、フォームはフォームビューではなくデータシートビューを使用したいです。
従って、フォーム名がそのままフォーム上に表示されることになります。テーブルのフィールド名も他との関係があるので変更はできません。
どのようにVBAを書けばいいのか、解決法をご教授いただけませんでしょうか。
もしくはデーターシートビューにおいて、フォームのフィールド名ではなく任意の名前を表示せせる方法があればフォームのフィールド名をテーブルのフィールド名に合わせることができるので、こちらでも解決できそうなのですが・・
何卒、よろしくお願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(データベース) Accessフォームからパラメーターで表示したレコードを指定のExcelのセルへ転送する方法について 2 2022/08/22 18:04
- Access(アクセス) チェックボックスにチェックが入った後の挙動 1 2022/08/21 12:39
- Access(アクセス) アクセスの更新クエリでカレントレコードのみ更新したい 1 2022/06/02 23:32
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
- Access(アクセス) Accessテーブルの結合で別々のテーブルのフィールドを組み合わせて値を出す方法について 2 2022/07/20 19:43
- Excel(エクセル) 【vba】日付の形式が勝手に変わってしまう。 1 2022/09/29 10:54
- Access(アクセス) Accessで予定表を作成しようとしてます。 テーブル フィールド名 連番 オートナンバー型 年月日 2 2023/07/23 11:40
- Visual Basic(VBA) Accessフォームで全レコードを指定のExcelのセルへ転送し印刷する方法について 2 2022/09/08 18:23
- Visual Basic(VBA) ExcelからAccessのテーブルに書き込む時に時間がかかる 1 2022/10/14 20:38
- Access(アクセス) Access 登録ボタンからサブフォームの更新 1 2022/07/22 10:23
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Accessのフォーム上にレコード...
-
ACCESSのフォームからデータの...
-
Access2002 フォームを閉じるた...
-
選択したチェックボックスのみ...
-
ACCESSで入力フォームをHTMLフ...
-
ACCESS フォームの値がすぐに...
-
accessの自動更新処理をできな...
-
Accessでの累計の出し方について
-
Accessフォームのファイル名を...
-
ACCESS(アクセス):一度の入力で...
-
帳票フォームに全レコードを表...
-
ACCESSで議事録を作りたいので...
-
Accessのフォームのスタイルの...
-
ACCESS レポートへの表示・非表示
-
フォーム上のレコード数表示が...
-
アクセスのフォームのビューが...
-
Accessのフォームで作業領域を...
-
[至急]accessクエリ結果を入力...
-
オートシェイプのような作図入...
-
「メソッドまたはデータメンバ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ACCESSのフォームからデータの...
-
選択したチェックボックスのみ...
-
アクセスのフォームのビューが...
-
ACCESSで入力フォームをHTMLフ...
-
Accessのフォーム上にレコード...
-
Access 別フォームへの再クエ...
-
Accessフォームのテキストボッ...
-
accessの自動更新処理をできな...
-
「メソッドまたはデータメンバ...
-
アクセスでテーブルの変更内容...
-
アクセスでの項目追加について...
-
Accessのフォームで作業領域を...
-
Access フォーム上でコンボボッ...
-
アクセス 0以外をカウントす...
-
ACCESSの表形式で、レコードを...
-
Accessのハイパーリンクのパス...
-
ADOでRecordsetオブジェクトを...
-
Access2002 フォームを閉じるた...
-
ACCESSで、フォームのレコード...
-
Access runtimeでテーブル、ク...
おすすめ情報