Tìm số bị thiếu từ giá trị (nguyên dương) min đến giá trị max.
Trong vùng n đến dd phải có số chạy từ giá trị (nguyên dương) từ min đến giá trị max, nếu không như vây là bị thiếu, ví dụ hàng 11 thiếu số 33. Làm sao để tìm được số 33 trên ạ? Em cảm ơn ạ!
Sub TimCacSoThieu()
Dim SoCot As Integer, J As Long, Dm As Integer, Max_ As Integer, Min_ As Integer
Dim Rng As Range, sRng As Range, WF As Object
SoCot = Sheets("A4").UsedRange.Columns.Count
Set WF = Application.WorksheetFunction
For J = 3 To .End(xlDown).Row 'Duyêt Theo Dòng '
Dim sKQ As String
Set Rng = Range(Cells(J, "N"), Cells(J, SoCot).End(xlToLeft))
Min_ = WF.Min(Rng): Max_ = WF.Max(Rng)
For Dm = Min_ To Max_
Set sRng = Rng.Find(Dm, , xlFormulas, xlWhole)
If sRng Is Nothing Then
sKQ = Str(Dm) & "," & sKQ
End If
If Len(sKQ) Then Cells(J, "I").Value = sKQ
Next Dm
Next J
End Sub
Min_ = WF.Min(Rng): Max_ = WF.Max(Rng)
Min và Max có sẵn ở cột J và K
==========================
Thử xem công thức này xem sao :
H3=IFERROR(SMALL(IF(ISNA(MATCH(ROW(INDIRECT(MIN($N3:$DD3)&":"&MAX($N3:$DD3)));$N3:$DD3;0));ROW(INDIRECT(MIN($N3:$DD3)&":"&MAX($N3:$DD3)));"");COLUMN(A$1));"")
Kéo công thức các ô còn lại
Xem chi tiết file vì bạn không dùng 365 nên không có hàm TEXTJOIN để nối.
Ở đây mình đang lấy min=1, bạn xem thử áp dụng được không nhé.
=IFERROR(SMALL(IF(COUNTIF($N3:$DD3; COLUMN(INDIRECT("r1c1:r1c"&$K3;0)))=0;COLUMN(INDIRECT("r1c1:r1c"&$K3;0));"");COLUMN(A1));"")
www.giaiphapexcel.com/diendan/threads/t%C3%ACm-s%E1%BB%91-b%E1%BB%8B-thi%E1%BA%BFu-t%E1%BB%AB-gi%C3%A1-tr%E1%BB%8B-nguy%C3%AAn-d%C6%B0%C6%A1ng-min-%C4%91%E1%BA%BFn-gi%C3%A1-tr%E1%BB%8B-max.163998/
Khóa học Power PI – Ứng dung trong Nhân sự
TỔNG QUAN KHÓA HỌC: POWER BI CHO NGÀNH NHÂN SỰ Khóa học Power BI cho Nhân sự được thiết kế dành riêng cho các...
Xem khóa học
Bình luận