Đã lâu không vào diễn đàn nên không bít tin nhắn của bạn, thông cảm cho mình nhé mình gửi File cho bạn đây kiểm tra xem saoTrường hợp nữa như file đính kèm, Các bạn xử lý giúp để có sheet "Ket qua"
@Ngoc Lan: Nếu dòng chi phí nhiều hơn Range("G65536").End(xlUp).Row > Range("D65536").End(xlUp).Row thì không chính xác
Mình mới học Excel nên vận dụng thử cách của bạn, Mong bạn xem giúp nếu có thể rút gọn code hoặc viết lại code này
Many tks.
Trong Marco của mình bạn thay dòng:
Do While i <= .Range("D65536").End(xlUp).Row
Bằng dòng:
Do While i <= .Range("D65536").End(xlUp).Row Or i <= .Range("G65536").End(xlUp).Row
hoặc trong Marco của bạn nên tận dụng:
thay:
If NextRow1 >= NextRow2 Then
NextRow = NextRow1
ElseIf NextRow2 >= NextRow1 Then
NextRow = NextRow2
End If
bằng:
NextRow = Application.WorksheetFunction.Max(NextRow1, NextRow2)