Microsoft Access 掲示板

実行時エラー3421について

2 コメント
views
4 フォロー

ACCESSのデータをカウントする必要があったので、AOBではなくDAOを選択したついでに、
データのアップもDAOで処理することにしました。

対象フィールドは、年月日という名前で、データタイプは日付/時刻型です。
Set daoRs = daoCn.OpenRecordset("2023")
daoRs.AddNew 'レコードを追加する。
daoRs!年月日 = "#" & Date & "#"
daoRs!年月日の処で、
「access vba 3421 データ型の変換エラーが発生しました」
となり、ストップ!
文字列や、数字のデータではエラーは起こりません。
どのように、対処したらよいのでしょうか?

タークン
作成: 2023/11/06 (月) 16:04:46
通報 ...
1

"#" & Date & "#"だと文字列になります。
日付/時刻型フィールドに文字列を入力しようとしているのでデータ型変換エラーになります。

Date関数の戻り値はDate型(日付/時刻型)なのでそのまま代入すればエラーになりません。

daoRs!年月日 = Date

2
タークン 2023/11/06 (月) 16:51:40 7a0a1@2705a

hatenaさん、ありがとうございました。
updateできました。
AOBのSQL文とは、扱いが少し違っていたのですね。

解決した時の、解決ボタンらしきものが見当たりませんでしたが、
このままでよろしかったでしょうか