Làm sao lấy được 04 số liên tục?

  • Thread starter Thread starter bluecat
  • Ngày gửi Ngày gửi
Liên hệ QC

bluecat

Thành viên mới
Tham gia
7/10/06
Bài viết
37
Được thích
1
Làm sao lấy được 04 số liên tục trong một dãy gồm 10 số không liên tục?
 

File đính kèm

Làm sao lấy được 04 số liên tục trong một dãy gồm 10 số không liên tục?

Lấy theo hàng hay cả cột vậy bạn ???

Nếu gặp Cell trống thì bỏ luôn hay lấy tiếp Cell bên cạnh cho đến khi có giá trị ???

Bạn thử làm VD 3 hàng bạn đưa lên thì mới hình dung ra đề bài của bạn.

Thân!
 
Upvote 0
Lấy theo hàng hay cả cột vậy bạn ???

Nếu gặp Cell trống thì bỏ luôn hay lấy tiếp Cell bên cạnh cho đến khi có giá trị ???

Bạn thử làm VD 3 hàng bạn đưa lên thì mới hình dung ra đề bài của bạn.

Thân!
Lấy theo hàng Okebab ơi!
Nếu gặp cell trống thì không tính, chỉ lấy 04 cell liên tục có giá trị đến khi nào hết thì thôi.

Hàng 10 Kq = (1-3-9-7), (3-9-4-7), (9-4-7-6)
Hàng 11 kq = (2-5-8-9), (5-8-9-6), (6-1-5-2)
Hàng 12 kq = (0-6-3-2), (1-56-9-13)
 
Upvote 0
Lấy theo hàng Okebab ơi!
Nếu gặp cell trống thì không tính, chỉ lấy 04 cell liên tục có giá trị đến khi nào hết thì thôi.

Hàng 10 Kq = (1-3-9-7), (3-9-4-7), (9-4-7-6)
Hàng 11 kq = (2-5-8-9), (5-8-9-6), (6-1-5-2)
Hàng 12 kq = (0-6-3-2), (1-56-9-13)

có phải ý bạn thế này không?
 

File đính kèm

Upvote 0
Xin hỏi nếu dùng vòng For thì như thế nào?
 
Upvote 0
A, tìm ra rồi. Gửi bạn code đây. Bạn copy vào Module và chạy. Tùy theo dòng nào cần lấy thì chọn lại vùng đó nha!
PHP:
Sub Chay() Set vung = Range("A11:J11") k = 0 n = 1 For i = 1 To vung.Count - 3     For j = i To i + 3         If vung.Cells(j) = "" Then         k = k + 1         End If     Next       If k = 0 Then         tt = vung.Cells(i)             For m = i + 1 To i + 3             tt = tt & "-" & vung.Cells(m)             Next         Cells(n, 11) = tt         k = 0         n = n + 1     Else     k = 0     End If Next End Sub
Thân.
 
Lần chỉnh sửa cuối:
Upvote 0
Xin hỏi nếu dùng vòng For thì như thế nào?

Đây là UDF dùng công thức mảng :

PHP:
Function KQ(Mang As Range)
    Application.Volatile (False)
    If Mang.Columns.Count < 4 Then Exit Function
    Dim iC As Long, iR As Long, i As Long
    Dim KQTemp()
    ReDim KQTemp(Mang.Count, 0)
    For iR = 1 To Mang.Rows.Count
        For iC = 1 To Mang.Columns.Count - 3
            If Mang(iR, iC) <> "" And Mang(iR, iC + 1) <> "" And _
               Mang(iR, iC + 2) <> "" And Mang(iR, iC + 3) <> "" Then
                KQTemp(i, 0) = Mang(iR, iC) & "-" & Mang(iR, iC + 1) & "-" & Mang(iR, iC + 2) & "-" & Mang(iR, iC + 3)
                i = i + 1
            End If
        Next
    Next
    KQ = KQTemp
End Function
Thân!
 

File đính kèm

Upvote 0
Cảm ơn Po_Picachu về vòng For!
Cho mình hỏi thêm nếu mở rộng ra mình
nếu lấy kết qủa ba dòng cùng một lúc thì chỉnh vòng For trên ntn cho phù hợp, mình chưa rành về vòng For!
Mình set lại Range
thì kq nối tiếp từ dòng này sang dòng kia.
 
Upvote 0
Tổng hợp kiến thức!!!! Phê...và...--=----=-- quá! Gửi bạn file này và chúc bạn ngủ ngon nha! Ho..ho.m Thân.
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Web KT

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

Back
Top Bottom