プロが教える店舗&オフィスのセキュリティ対策術

Accessのフォームで出荷に関する情報を入力します。

レコードが1件の場合は、各入力情報を、「Me.品目番号、Me.ロット、Me.数量」
というように扱えますが、

画像の様に複数レコード入力し、2件目の「品目番号、ロット、数量」の情報を扱う場合、
何か方法はありますか?

ご存じの方、教えて下さい。

「Accessで、以下のようなことは出来ま」の質問画像

質問者からの補足コメント

  • 自己解決できましたので、掲載します。

    1件目の「品目番号、ロット、数量」の情報を扱う場合、SQLを使って、
    SQL = "SELECT TOP 1 品目番号,ロット FROM テーブル;"
    Set DB = CurrentDb
    Set RS = DB.OpenRecordset(SQL)

    n件目の「品目番号、ロット、数量」の情報を扱う場合、SQLを使って、
    SQL = "SELECT TOP 1 * FROM テーブル WHERE ロット > (SELECT MAX(ロット) FROM (SELECT TOP n-1 * FROM テーブル ORDER BY ロット));"
    Set DB = CurrentDb
    Set RS = DB.OpenRecordset(SQL)

    このようにSQL文で、各レコードの情報を扱えるようになりました。

      補足日時:2020/10/19 09:22

A 回答 (1件)

「Me.品目番号、Me.ロット、Me.数量」というのは


カレントレコードの値を取得するものです。
2行目に移動すれば同じコードで 2行目の値を取得できます。

レコードの位置にかかわらず、ということなら
RecordsetClone を使って操作することになるでしょう。

質問が具体的ではないので、こんな回答になります。
    • good
    • 0
この回答へのお礼

ご回答、ありがとうございました。

自己解決したので、「RecordsetClone」を使った方法は、まだ確認していないのですが、今回は回答頂き、ありがとうございました。

お礼日時:2020/10/19 09:25

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!