dim SQL as String
dim rs As Recordset
SQL = " SELECT FIRST(フィールド名) AS 名前 FROM テーブル名 "
SQL = " SELECT LAST(フィールド名) AS 名前 FROM テーブル名 "
Set rs = CurrentDb.OpenRecordset(SQL)
FIRST関数は先頭のレコードを返します。
LAST関数は末尾のレコードを返します。
Access固有の関数です。
しかし、テストすると正確な値が返りません。
下記のテーブルの場合(IDはオートナンバー型です)
ID testname 数量
110503 a0 100
110504 a1 200
110505 a2 300
110506 a3 400
110511 a4 50
110512 a5 10
110513 a6 60
FIRST関数では50が返りました。
LAST関数は400が返りました。
Microsoftサーポートオンラインにも「First および Last 関数が期待どおりのレコードを返さない」と記載されています。
http://support.microsoft.com/default.aspx?scid=kb;ja;208190
それによりますと、「First()、Last()、DFirst()、および DLast() 関数では、並べ替え順、インデックス、および主キーが無視されます。これらの関数は、指定された並べ替え順での先頭または最後のレコードではなく、レコードがテーブルに入力されたときの順序に基づいて、削除されていない先頭または最後のレコードを返します。 」とあります。