次のコードを使用して、excelシートの表データからuserformを入力し、次のおよび前のボタンを使用してテーブルの前のエントリを繰り返して正常に実行しようとしています。このコードでは、前のボタンが前の行を選択し、ユーザーフォームにロードします。次のボタンは次の行を選択し、それをuserformにもロードします。excel userformでナビゲーション中に制限に達するための警告メッセージ
質問:サイクリングをテーブルのみに制限したい(ワークシートの339行から390行まで)。このコードを修正して、テーブルへの移動を制限し、最初のレコードと最後のレコードが到達したという警告メッセージを表示します。私は「次へ」ボタンのコードを修正してテストしましたが、前のボタンのコードは機能しません。
あなたのレビューと提案をいただければ大変ありがとうございます。 Const TblFirstRow
:
Private Sub cmdGetNext_Click()
Range("B339").Select
ActiveCell.End(xlDown).Select
lastRow = ActiveCell.Row
currentrow = currentrow + 1
If currentrow = lastRow + 1 Then
currentrow = lastRow
MsgBox "You have reached the last entered data!"
End If
txtmeas.Text = Cells(currentrow, 2).Value
txtsource.Text = Cells(currentrow, 4).Value
cmbmatric.Text = Cells(currentrow, 6).Value
End Sub
Private Sub cmdPreviousData_Click()
currentrow = currentrow - 1
If currentrow > 1 Then
txtmeas.Text = Cells(currentrow, 2).Value
txtsource.Text = Cells(currentrow, 4).Value
cmbmatric.Text = Cells(currentrow, 6).Value
ElseIf currentrow = 1 Then
MsgBox "This is your first record!"
currentrow = currentrow + 1
End If
End Sub
私の答えでコードをテストしましたか?どんなフィードバック? –
こんにちはシャイ、はい私は試みたが、それは問題を解決しませんでした。私がここで共有したコードは完全に機能していて動作していますが、唯一の問題はテーブルのROM番号で停止するのではなく、前の行に移動し続けることです。しかし、次のデータボタンのために、それは完全に正常に動作し、メッセージを表示しています。したがって、唯一のことは最初の行に制限することです。より明確にするために、私は異なる行に複数のテーブルを持ち、各テーブルに同じコードを適用します。行1(A1)から始まる表でこのコードを試してみると、これは両方向(前後)には適していますが、残りの表では不可能です。 – user7828601
私はあなたの時間と支援Shai Radoを感謝します! – user7828601