Bạn tham khảo trong file sau. Cách này dài dòng vì phải thêm cột phụ và công thức phức tạp.muốn lọc dữ liệu qua 2 ĐK như BC quá mà chưa được, các cao thủ chỉ dùm.
Em nghĩ là cần 1 cột phụ thôi, không cần VBA đâu.Bạn tham khảo trong file sau. Cách này dài dòng vì phải thêm cột phụ và công thức phức tạp.
Nếu bạn đồng ý thì sử dụng VBA sẽ gọn gàng hơn.
Em nghĩ là cần 1 cột phụ thôi, không cần VBA đâu.
File đầu sai cột 2, 3, em đã chỉnh lại file sau.
Ví dụ mình chỉ là 1 giải pháp, biện pháp thêm 1 cột phụ, có thể thay DAY() bằng hàm TRUNC().Lọc kiểu này sẽ SAI, leonguyenz ah,
Vì trong dữ liệu mà có nhiều tháng trong năm : ví dụ có 2 ngày 1/10 và 1/11) thì kết quả sẽ sai - vì khi đó coi như trùng nhau, đó là chưa kể khác năm nữa thì lại sai tiếp nữa
Lý do vì dùng hàm Day() ở cột J
Tuy nhiên công thức sẽ đúng nếu dữ liệu chỉ có các ngày trong 1 tháng
Private Sub Worksheet_Activate()
[F2].FormulaR1C1 = "=COUNTIF('" & Sheet1.Name & "'!C4,'" & Sheet1.Name & "'!RC4)>1"
With Sheet1
.Range("D2:D" & .[A65536].End(xlUp).Row).FormulaR1C1 = "=TRUNC(RC[-2])&"" ""&RC[-3]"
.[A1].CurrentRegion.AdvancedFilter xlFilterCopy, [F1:F2], [B1:D1]
.[D:D].ClearContents
End With
[F2].ClearContents
If [B65536].End(xlUp).Row > 1 Then
[A2] = 1
[A2].DataSeries Rowcol:=xlColumns, Step:=1, Stop:=[B65536].End(xlUp).Row - 1
Range([C2], [C65536].End(xlUp)).NumberFormat = "dd/MM/yyyy"
End If
End Sub