コマンドボタンで前行、次行へ移動する
コマンドボタンで前行、次行へ移動する

Excel2016,2013マクロ 37回
ユーザーフォームでデータの前行、次行へ移動する
コマンドボタンで前行、次行へ移動する
(サンプルファイルは、こちらから
マクロ37回サンプルデータ)
前行ボタンで前の行に移動する
前の行に移動するボタンにコードを設定します。VBEを開いて、フォームを表示し、対象のコマンドボタンをダブルクリックして、コードを表示します。

コマンドボタンがクリックされた時の処理するコードが書けるようになります。
コマンドボタンの名称を変更していない時は、
Private Sub CommandButton1_Clickというコードになっています。

マクロ講座36回で、ラベルに取得した
udfrm2.lbRow = Target.Row行ナンバーですが、これを使います。udfrm2.lbRow を Me.lbRowと書き換えています。
前の行はx-1

あとは前回、Worksheet_SelectionChange プロシージャに書いたコードの再利用です。

ユーザーフォームを起動し、前の行ボタンでデータが表示されるか見てみます。

更新ボタンで修正データに書き換え
性別を男に変更して、更新ボタンを押すと、データが変わります。

前ボタンのコードです。データは5行目から入力されているので、4になったらExitします。また更新ボタンを押すことを考慮して、最後で Me.lbRow = x と指定しています。
Private Sub cmdPrev_Click()
Dim x As Integer
x = Me.lbRow
x = x - 1
If x = 4 Then Exit Sub
Me.txtNo = Cells(x, 2)
Me.txtName = Cells(x, 3)
Me.txtID = Cells(x, 4)
Me.txtad = Cells(x, 5)
Me.combblood = Cells(x, 7)
Me.txtAge = Cells(x, 8)
If Cells(x, 6) = "男" Then
Me.OpMale.Value = True
Else
Me.Opfemale.Value = True
End If
Me.lbRow = x
End Sub
次へボタンで次行に移動
次の行へ移動するボタンのコードは、前の行へ移動するコードと同じです。

データのある最後の行を選択して、フォームを起動させます。次ボタンを押すと次行へ移動しますが、データがないので、空欄になっています。

今回はユーザーフォームコマンドボタンで、シートの前行、次行へ移動するコードを紹介しました。お疲れさまでした。