以前このVBで繰り返しをやめて、最初の1件目だけ読み取りたいと質問したのですが、テーブルにある最後のレコードだけ読み取るということは可能でしょうか?


'tbl_ラベルデータトランの読込
SSql = "SELECT * FROM tbl_REラベルデータトラン "
SSql = SSql & "ORDER BY 店舗コード, 個口NO"
RdTR4.Open SSql, Cnn
Do Until RdTR4.EOF = True
'ラベル送信
Call Label_Send1(RdTR4)
RdTR4.MoveNext
Loop

Me.SubMas.Requery
MsgBox "ラベルプリンタへの送信が終了しました", vbInformation, "終了"

回答の条件
  • 1人5回まで
  • 登録:2006/06/20 18:31:27
  • 終了:2006/06/21 15:30:09

回答(3件)

id:SG5-NA No.1

SG5-NA回答回数18ベストアンサー獲得回数32006/06/20 18:39:42

ポイント35pt

構文からしてRdTR4がADOレコードセットと想定で

Dim varBM as Variant

'tbl_ラベルデータトランの読込

SSql = "SELECT * FROM tbl_REラベルデータトラン "

SSql = SSql & "ORDER BY 店舗コード, 個口NO"

RdTR4.Open SSql, Cnn

Do Until RdTR4.EOF = True

varBM=RdTR4.Bookmark

RdTR4.MoveNext

Loop

'ラベル送信

RdTR4.Bookmark=varBM

Call Label_Send1(RdTR4)

Me.SubMas.Requery

MsgBox "ラベルプリンタへの送信が終了しました", vbInformation, "終了"

または

'tbl_ラベルデータトランの読込

SSql = "SELECT * FROM tbl_REラベルデータトラン "

SSql = SSql & "ORDER BY 店舗コード, 個口NO"

RdTR4.Open SSql, Cnn

RdTR4.MoveLast

'ラベル送信

Call Label_Send1(RdTR4)

でしょうか。

RdTR4が必ず行を返す前提ですが。

id:kimizu No.2

kimizu回答回数726ベストアンサー獲得回数212006/06/20 18:39:57

ポイント35pt

ソート指定を逆順にして、最初のレコードを読み取るのが一般的です。

http://www.pursue.ne.jp/jouhousyo/SQLDoc/select07.html

ORDER BYでDESCを指定すれば、逆順になります。

なので、


ORDER BY 店舗コード DESC, 個口NO DESC


にして、最初の行を読めば、最終レコードです。

質問者が未読の回答一覧

 回答者回答受取ベストアンサー回答時間
1 きゃづみぃ 13539 10064 1198 2006-06-20 19:24:21

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません