
同じ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で質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
アクセスのフォームのビューが...
-
アクセス:フォームを閉じずに...
-
Formからの複数選択抽出条件に...
-
アクセスでの項目追加について...
-
accessの自動更新処理をできな...
-
ACCESS レポートへの表示・非表示
-
Accessのフォームで作業領域を...
-
Access 別フォームへの再クエ...
-
ACCESSのフォームからデータの...
-
Accessフォームのテキストボッ...
-
オートシェイプのような作図入...
-
Accessのフォーム上にレコード...
-
ACCESSを開くと最初にフォーム...
-
ACCESSで入力フォームをHTMLフ...
-
Access2002 フォームを閉じるた...
-
アクセスでテーブルの変更内容...
-
ACCESSでのテキストボックスの...
-
ACCESS クエリで重複データを最...
-
テーブルに主キーを作らないデ...
-
access で「指定したフィール...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Formからの複数選択抽出条件に...
-
アクセス:フォームを閉じずに...
-
Accessのフォーム上にレコード...
-
選択したチェックボックスのみ...
-
アクセスのフォームのビューが...
-
ACCESSのフォームからデータの...
-
Access 別フォームへの再クエ...
-
アクセスでテーブルの変更内容...
-
accessの自動更新処理をできな...
-
アクセスでの項目追加について...
-
Access フォーム上でコンボボッ...
-
Access2002 フォームを閉じるた...
-
アクセス 0以外をカウントす...
-
帳票フォームに全レコードを表...
-
入力途中の入力した値をすべて...
-
Accessのハイパーリンクのパス...
-
ACCESSで入力フォームをHTMLフ...
-
Accessフォームのテキストボッ...
-
Accessのフォーム画面について
-
「メソッドまたはデータメンバ...
おすすめ情報