Tìm các range theo điều kiện.

Liên hệ QC

emgaingayngo

Thành viên hoạt động
Tham gia
9/2/07
Bài viết
141
Được thích
5
Em có cde như sau :
PHP:
Sub ReportCK()
'Kiem tra 1 khu vuc range lien tiep voi
'dieu kien la khoang cach giua cac so >=1 (chu ky) khong qua 7 ngay
Dim i As Long, j As Long, rng_dau As Range, rng_chuky As Range
Dim kqdau As String, kqgachngang As Long, icot As Long, cotcuoi As Long
Dim ws As Worksheet
Set ws = Worksheets("BaoCao")
cotcuoi = S02.Range("A2").End(xlToRight).Column
ws.Range("A2:B10000").ClearContents
    ws.Range("A1000").End(xlUp).Offset(1, 0).Resize(1, 2).Formula = "=REPT(""-"",9)"
    For j = 2 To cotcuoi
        icot = 1
        Do
            Set rng_dau = Cells(2, j)
            kqdau = rng_dau.Value
            If kqdau = "-" Then
                Exit Do
            Else
            
                Set rng_chuky = Cells(2, j).Resize(1, icot) ': rng_chuky.Select
                kqgachngang = MaxCount(rng_chuky, "-", 2)
                
                If kqgachngang = 7 Then
                    'ghi kq baocao
                    
                    ws.Range("A1000").End(xlUp).Offset(1, 0).Value = S02.Cells(1, j).Value & "-" & S02.Cells(1, j + icot - 8).Value ' vi tri
                    ws.Range("B1000").End(xlUp).Offset(1, 0).Value = rng_chuky.Columns.Count - 7 ' dodai chu ky
                    
                End If
                icot = icot + 1
                
            End If
        Loop Until kqgachngang = 7 Or icot = cotcuoi
        Set rng_dau = Nothing
        Set rng_chuky = Nothing
      j = j + icot
    Next j
End Sub

Sau khi chạy xong có những cell nó không nhận ra được giá trị >=1, ví dụ trong sheet BaoCao cột A, range đầu tiên phải là từ ngày 05/01/06- 24/02/06, nhưng kq là từ ngày 12/01-24/02/06, bỏ mất của em 2 ngày không đếm.
Một chổ bị sai khác nữa là : 15/12/08-06/01/08

Em nghĩ mình bị sai định dạng, nhưng đã kiểm tra rồi, không được, các cao thủ GPE có cách nào hay chỉ em khắc phục với.
 

File đính kèm

Web KT

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

Back
Top Bottom