tìm vị trí xuất hiện đầu tiên (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

gplantopia

Thành viên mới
Tham gia
5/12/14
Bài viết
20
Được thích
0
Dear anh chị

Em có bài toán như file đính kèm anh chị xem giúp em

Em cần lấy vị trí số 0 đầu tiên xuất hiện trong dãy (duyệt từ phải qua trái)

Em có thử dùng vòng lặp for để tìm nhưng nó toàn cho ra kết quả là vị trí số 0 cuối cùng

Em cảm ơn
 

File đính kèm

Dear anh chị

Em có bài toán như file đính kèm anh chị xem giúp em

Em cần lấy vị trí số 0 đầu tiên xuất hiện trong dãy (duyệt từ phải qua trái)

Em có thử dùng vòng lặp for để tìm nhưng nó toàn cho ra kết quả là vị trí số 0 cuối cùng

Em cảm ơn
Mình chỉ biết dùng Function thôi, còn Sub thì không biết.
 

File đính kèm

Upvote 0
Dear anh chị

Em có bài toán như file đính kèm anh chị xem giúp em

Em cần lấy vị trí số 0 đầu tiên xuất hiện trong dãy (duyệt từ phải qua trái)

Em có thử dùng vòng lặp for để tìm nhưng nó toàn cho ra kết quả là vị trí số 0 cuối cùng

Em cảm ơn

Nếu bên phải lúc nào cũng kết thúc tại cột G, thi bạn cho chạy từ trái qua, sau do lay 7- vị trí cuối là đc.
Nếu vẫn muốn chạy từ phải qua thì bạn đặt thêm dòng Go to nữa là đc.
 
Upvote 0
Dear anh chị

Em có bài toán như file đính kèm anh chị xem giúp em

Em cần lấy vị trí số 0 đầu tiên xuất hiện trong dãy (duyệt từ phải qua trái)

Em có thử dùng vòng lặp for để tìm nhưng nó toàn cho ra kết quả là vị trí số 0 cuối cùng

Em cảm ơn

Bạn chỉnh lại Code thế này:
Mã:
Sub test()
Dim i As Integer, k As Integer
Dim sArr(), dArr()
sArr = Range("A2:G2").Value
ReDim dArr(1 To UBound(sArr), 1 To UBound(sArr, 2))
For i = UBound(sArr, 2) To 1 Step -1
    If sArr(1, i) = 0 Then
        k = i
[COLOR=#ff0000][B]        Exit For[/B][/COLOR]
    End If
Next
MsgBox [COLOR=#ff0000][B]UBound(sArr, 2) - k + 1[/B][/COLOR]
End Sub
 
Upvote 0
Dear anh chị

Em có bài toán như file đính kèm anh chị xem giúp em

Em cần lấy vị trí số 0 đầu tiên xuất hiện trong dãy (duyệt từ phải qua trái)

Em có thử dùng vòng lặp for để tìm nhưng nó toàn cho ra kết quả là vị trí số 0 cuối cùng

Em cảm ơn
bạn dùng code nầy để lấy 3 kết quả ở cột K
Mã:
Sub test()
Dim i As Integer, k As Integer
Dim sArr(), dArr()
sArr = Range("A2:G4").Value
For i = 1 To UBound(sArr, 1)
    For j = UBound(sArr, 2) To 1 Step -1
        If sArr(i, j) = 0 Then
            Range("k" & i + 1) = UBound(sArr, 2) - j + 1
            Exit For
        End If
    Next
Next
End Sub
 
Upvote 0
Dear anh chị

Em có bài toán như file đính kèm anh chị xem giúp em

Em cần lấy vị trí số 0 đầu tiên xuất hiện trong dãy (duyệt từ phải qua trái)

Em có thử dùng vòng lặp for để tìm nhưng nó toàn cho ra kết quả là vị trí số 0 cuối cùng

Em cảm ơn
Em muốn sử dụng mảng thì như thế này :

Mã:
Function TimVtri(Rng As Range, mNum As Double)
Dim i As Long, sArr(), n As Long
sArr = Rng.Value
n = UBound(sArr, 2)
For i = n To 1 Step -1
    If sArr(1, i) = mNum Then Exit For
Next
TimVtri = n - i + 1
End Function

Tìm vị trí của số nào thì nhập số đó vào tham số thứ 2 của hàm TimVtri()

=TimVtri(A2:G2,0)
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom