Private Function GetLastSameRow(ByVal row, initialValue) As Integer
.
.
.
If (nextCell.Value = initialValue) Then
GetLastSameRow = GetLastSameRow(row + 1, initialValue)
End If
MsgBox ("returning : " & row)
GetLastSameRow = row
End Function
ifステートメントが終了した後、動作は本当に奇妙です。
私はそれにデバッガーを実行しました、そしてこれはそれがジャンプする方法です:
1. End If '
2. MsgBox ("returning : " & row) ' row value is 3
3. GetLastSameRow = row '
4. MsgBox ("returning : " & row) ' row value is 2 ????????
5. GetLastSameRow = row '
つまり、基本的にはcorrect
値を返したいのですが、その後ジャンプして値End if
を取得correct-1
します。