コマンドボタンで前行、次行へ移動する
Excel2016,2013マクロ 37回
ユーザーフォームでデータの前行、次行へ移動する
コマンドボタンで前行、次行へ移動する
(サンプルファイルは、こちらから
マクロ37回サンプルデータ)
前行ボタンで前の行に移動する
前の行に移動するボタンにコードを設定します。VBEを開いて、フォームを表示し、対象のコマンドボタンをダブルクリックして、コードを表示します。
コマンドボタンがクリックされた時の処理するコードが書けるようになります。
コマンドボタンの名称を変更していない時は、Private Sub CommandButton1_Clickというコードになっています。
コマンドボタンの名称を変更していない時は、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
次へボタンで次行に移動
次の行へ移動するボタンのコードは、前の行へ移動するコードと同じです。
データのある最後の行を選択して、フォームを起動させます。次ボタンを押すと次行へ移動しますが、データがないので、空欄になっています。
今回はユーザーフォームコマンドボタンで、シートの前行、次行へ移動するコードを紹介しました。お疲れさまでした。