準・究極の選択

こんにちは。いつもお世話になりっぱなしです。
今回は、あるテーブルの2つ目以降のレコードの値を取得
できないかなぁと思って質問しました。

テーブルAにBというフィールドがあります。
その中にはア、イ、ウ・・・・とレコードがあるとした場合、
1つ目のレコードは
Dfirst("B","A")で取得できますが、
2つ目のレコードはどうやって取得すればいいのでしょうか?
関数で出来れば最高なんですが、無理なようでしたら
別の方法でも構いません。
皆さんのお力をお貸しください。

よろしくお願いします。

A 回答 (2件)

Dfirst関数をおつかいのようですので、環境は


Accessであると過程してお話します。
テーブルAにはB以外のフィールドはありますか?
もし検索キーになるような重複なしのフィールドがあれば、
そのフィールドをキーにDLOOKUP関数で値を取得できます。
たとえば、レコードの先頭から1,2,3,4・・・というように
通しNo.を入れたフィールド(C)があれば、2レコード目の
Bフィールドの値を取得するには以下のような感じになります。

DLookup("B","A","C=" & 2)

一般化すると
DLookup("値取得フィールド","テーブル/クエリ名","検索フィールド=条件")
といった感じでしょうか?

ヘルプでDLookup関数を調べてみてください。
    • good
    • 1
この回答へのお礼

お返事が遅くなりましてごめんなさい。
DLOOKUP関数を使って実現できました。
ありがとうございました。

お礼日時:2003/11/28 18:17

Accessですか?


DAOを使って見ては、以降は2件目のレコードのデータを変数に代入するコードです。

sub honyara()
Dim Db as databese
Dim Rs As Recordset
Dim Hensu1 as String
Dim Hensu2 as String
Set DB = CurrentDb
Set RS1 = DB.OpenRecordset("テーブル", dbOpenTable)
Rs.move 2
Hensu1=Rs!A
Hensu1=Rs!B
RS.Close
DB.Close
End Sub

Access97ならこのDAOは標準で参照設定されていますが、2000以降は
ツールメニューの参照設定でMicrosoft DAO 3.6 Object Libraryを参照させとかないとだめですよ
    • good
    • 0

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

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A