• ベストアンサー
  • すぐに回答を!

フォームのテキストボックスに一番新しいテーブルの値を入れるには?

  • 質問No.825976
  • 閲覧数362
  • ありがとう数1
  • 回答数1

お礼率 27% (12/44)

こんにちは、VBA初心者です。アクセス2000を使用してます。
現在、フォームのテキストボックス(年月度)の初期値に、DMAXでテーブルにある(年月度)の値を入れてます。
過去の年月度を入れる時は、手入力で変更してるのですが、続けて入力したい場合、DMAXになってるので、初期値が一番新しい(年月度)になってしまいます。
これを、前回入力した(年月度)を初期値にするには、どうしたらいいでしょうか?

Private Sub Form_Current()
Dim dbs As Database
Dim rst As Recordset
Set dbs = CurrentDb
Set rst = dbs.OpenRecordset("年月度マスター", dbOpenDynaset)
If IsNull(Me![年月度]) Then
Me![年月度] = DMax("年月度", "データ")
End If

If Me![データID] = 0 Then
Me!データID = rst![マスターデータID] + 1
rst.Edit
rst![マスターデータID] = Me!データID
rst.Update
rst.Close
End If

End Sub

質問者が選んだベストアンサー

  • 回答No.1
  • ベストアンサー

ベストアンサー率 63% (286/453)

> 前回入力した(年月度)を初期値にするには、どうしたらいいでしょうか?

DLast 関数を使えば、最後に入力したレコードを参照することができます。
お礼コメント
makoc_chan

お礼率 27% (12/44)

DLastですね!ありがとうございます。
先ほど、書き換えたら出来ました。
投稿日時:2004/04/08 13:35
関連するQ&A

その他の関連するQ&Aをキーワードで探す

ページ先頭へ