Văn Toàn 1996
Thành viên hoạt động
- Tham gia
- 5/6/23
- Bài viết
- 102
- Được thích
- 22
Kiểm tra lại . . .Xin chào các anh chị cô chú bác GPE ! em có 1 cột HĐ Trong vùng B3:B12 em muốn lọc ra những số HĐ không có ra cột D như hình mô tả. Nhờ mọi người giúp đỡ xin cảm ơn
View attachment 293950
Sub XYZ()
Dim arr(), res(), S, sRow&, i&, k&
arr = Range("B3:B" & Range("B" & Rows.Count).End(xlUp).Row).Value
sRow = UBound(arr) - 1
ReDim res(1 To sRow, 1 To 1)
For i = 1 To sRow
If arr(i, 1) + 1 < arr(i + 1, 1) Then
k = k + 1
If arr(i, 1) + 2 = arr(i + 1, 1) Then
res(k, 1) = arr(i, 1) + 1
Else
res(k, 1) = arr(i, 1) + 1 & " - " & arr(i + 1, 1) - 1
End If
End If
Next i
Range("D3").Resize(sRow, 1).NumberFormat = "@"
If k Then Range("D3").Resize(sRow, 1) = res '
End Sub
Option Explicit
Sub test()
Dim i&, j&, k&, rng, res()
rng = Range("B3:B14").Value
ReDim res(1 To UBound(rng), 1 To 1)
For i = 1 To UBound(rng) - 1
For j = i + 1 To UBound(rng)
If rng(j, 1) = rng(i, 1) + 1 Then
Else
k = k + 1
res(k, 1) = rng(i, 1) + 1 & IIf(rng(i, 1) = rng(j, 1) - 2, "", " - " & rng(j, 1) - 1)
End If
Exit For
Next
Next
Range("D3:D1000").ClearContents
Range("D3").Resize(k, 1).Value = res
End Sub