アクセス小僧:再クエリ後、再クエリ前のカレントレコードを表示(2) [コンピューター]
前記事
http://cheese999.blog.so-net.ne.jp/2017-07-14-1
では、再クエリ後、再クエリ前のカレントレコードを表示する方法として、Bookmarkを使用したマクロを紹介しました。もう1つの方法として、CurrentRecordを使用したマクロを紹介します。
Private Sub USSaveReq1_Click()
'【機能】保存して更新
On Error GoTo myError
'【引数】
' なし
'【変数】
Dim myCurRcd1 As Long ' CurrentRecord
' 【コード】
myCurRcd1 = CurrentRecord ' 現在のCurrentRecord
'MsgBox ("現在のCurrentRecord=" & CurrentRecord)
DoCmd.RunCommand acCmdSaveRecord ' 保存
Me.Requery ' 更新
DoCmd.GoToRecord , , acGoTo, myCurRcd1 ' 更新前のレコードへ
'MsgBox ("CurrentRecord=" & CurrentRecord)
Exit Sub
myError:
MsgBox ("エラー" & vbCrLf & Err.Description)
End Sub
Requeryする前に、何番目のレコードがカレントになっているか、CurrentRecordの値を退避して、Requeryした後に、GoToRecordでRequery前のカレントレコードに移動します。
ちなみに、このマクロは、Microsoft Access クラス オブジェクトに置いておきます。
(PS) マクロを修正しました。CurrentRecordは、長整数型 (Long Integer) なので、myCurRcd1変数は、Integerではなく、Longとしました。
【参考】
Form.CurrentRecord プロパティ (Access)
https://msdn.microsoft.com/ja-jp/library/office/ff821182.aspx
http://cheese999.blog.so-net.ne.jp/2017-07-14-1
では、再クエリ後、再クエリ前のカレントレコードを表示する方法として、Bookmarkを使用したマクロを紹介しました。もう1つの方法として、CurrentRecordを使用したマクロを紹介します。
Private Sub USSaveReq1_Click()
'【機能】保存して更新
On Error GoTo myError
'【引数】
' なし
'【変数】
Dim myCurRcd1 As Long ' CurrentRecord
' 【コード】
myCurRcd1 = CurrentRecord ' 現在のCurrentRecord
'MsgBox ("現在のCurrentRecord=" & CurrentRecord)
DoCmd.RunCommand acCmdSaveRecord ' 保存
Me.Requery ' 更新
DoCmd.GoToRecord , , acGoTo, myCurRcd1 ' 更新前のレコードへ
'MsgBox ("CurrentRecord=" & CurrentRecord)
Exit Sub
myError:
MsgBox ("エラー" & vbCrLf & Err.Description)
End Sub
Requeryする前に、何番目のレコードがカレントになっているか、CurrentRecordの値を退避して、Requeryした後に、GoToRecordでRequery前のカレントレコードに移動します。
ちなみに、このマクロは、Microsoft Access クラス オブジェクトに置いておきます。
(PS) マクロを修正しました。CurrentRecordは、長整数型 (Long Integer) なので、myCurRcd1変数は、Integerではなく、Longとしました。
【参考】
Form.CurrentRecord プロパティ (Access)
https://msdn.microsoft.com/ja-jp/library/office/ff821182.aspx
有り難うございます。食欲だけは誰にも負けません(笑)
太鼓判を戴いて益々元気を出して。。。
私褒められのが大好きです。食べ過ぎに気を付けて笑顔で頑張りますm(__)m アリガトォ(._.)オジギ
by 沈丁花 (2017-07-16 07:49)
ヤバイぜ! ありがとうございます[__猫]
沈丁花さん、
人間、怒られるより、褒められたほうがいいですよね。
(中には、叱られてイイ気持ちになる人も。。?)
by cheese999 (2017-07-16 08:12)