Liệt kê các ngày cộng dồn mong muốn vào 1 ô. Nhờ mọi người giúp mình ạ.

Liên hệ QC
Tôi tuân thủ nội quy khi đăng bài
Chưa chắc là hay đâu anh, bẫy này vẫn để "sổng" lỗi khi ngày liền trước ngày kết thúc là ngày kết thúc chu kỳ đồng thời là ngày lễ.
--
Ngoài ra code còn một lỗi khá nghiêm trọng là sẽ rơi vào vòng lặp vô tận khi số ngày một chu kỳ bằng 0 (có thể do vô tình xóa ô chứa giá trị số ngày một chu kỳ).
--
Còn cái vế "lớn hơn ngày hiện tại thì ngày cuối cùng là ngày kết thúc" trong yêu cầu thì không hiểu ý nói gì, code cũng chưa thực hiện.
Hai lỗi đầu là đúng là lỗi, lỗi 3 thì hình như đã có rồi (dòng 12)
 
Dòng 12 khác gì so với các dòng khác anh? Trong code cũng không thấy chỗ nào so sánh với ngày hiện tại cả.
Y thị đổi ý là ngày kết thúc bất kỳ chứ không còn là ngày hiện tại nữa, nên thay thế bằng tham số EndD. Câu lệnh nối EndD nằm ngoài vòng lặp Do chính là thêm ngày cuối khi đã thoát vòng lặp. Mà điều kiện thoát vòng lặp là tmpD + Cycle > EndD bất kể lớn hơn 1 ngày hay nhiều ngày.
Dòng 12 nếu cộng tay (có cộng 2 ngày lễ) thì ngày cuối là 25/08/25, lớn hơn ngày cuối 25/12/24 (tô vàng), nên phải lấy ngày cuối và kết quả là E12.

1730560666112.png

Sinh ra lỗi là nếu ngày cuối bằng đúng ngày kết thúc thì bị 2 lần ngày kết thúc, và lỗi này fix bằng cách của phuocam đổi Loop Until thành Do While.
 
Lần chỉnh sửa cuối:
Chỉ có LCT, nói là sợ "điều kiện ảo" nhưng vẫn bám chặt.
Không anh. Sau khi đổi ý và sau khi có đủ số ngày nghỉ của những năm trước và những năm sau 2024 như tôi đòi, tôi mới viết cho yêu cầu mới nhất và dữ liệu đủ nhất.
 
Dòng 12 nếu cộng tay (có cộng 2 ngày lễ) thì ngày cuối là 25/08/25, lớn hơn ngày cuối 25/12/24 (tô vàng), nên phải lấy ngày cuối và kết quả là E12.
Mô tả yêu cầu ghi là "lớn hơn ngày hiện tại thì ngày cuối cùng là ngày kết thúc" nhưng anh hiểu là "lớn hơn ngày kết thúc thì ngày cuối cùng là ngày kết thúc" thế mà lại trúng. Hay thật.
1730600127863.png

lỗi này fix bằng cách của phuocam đổi Loop Until thành Do While.
Fix lỗi này nhưng lại lòi ra lỗi khác, bài #60 em có nêu trường hợp xảy ra lỗi.
 
Mô tả yêu cầu ghi là "lớn hơn ngày hiện tại thì ngày cuối cùng là ngày kết thúc" nhưng anh hiểu là "lớn hơn ngày kết thúc thì ngày cuối cùng là ngày kết thúc" thế mà lại trúng. Hay thật.
Yêu cầu thay ngày hiện tại bằng ngày kết thúc và chọn được là ở bài 40. Còn ô E5 trong file thì không sửa yêu cầu cũ từ bài 1 thành yêu cầu mới. Bài trên tôi có nói đương sự này là kẻ hời hợt và vô trách nhiệm mà. Hỏi mãi hỏi đủ thứ cho mãi đến bài 45 mới đủ thông tin, lúc đó tôi mới làm.
Fix lỗi này nhưng lại lòi ra lỗi khác, bài #60 em có nêu trường hợp xảy ra lỗi.
Tôi đã dự định không làm tiếp nên không test nữa và cũng không sửa nữa. Chẳng hạn như yêu cầu phát sinh 2 ngày lễ liên tiếp chỉ cộng 1 cho ngày lễ thứ nhất, tôi đã từ chối.
 
Yêu cầu thay ngày hiện tại bằng ngày kết thúc và chọn được là ở bài 40. Còn ô E5 trong file thì không sửa yêu cầu cũ từ bài 1 thành yêu cầu mới. Bài trên tôi có nói đương sự này là kẻ hời hợt và vô trách nhiệm mà. Hỏi mãi hỏi đủ thứ cho mãi đến bài 45 mới đủ thông tin, lúc đó tôi mới làm.

Tôi đã dự định không làm tiếp nên không test nữa và cũng không sửa nữa. Chẳng hạn như yêu cầu phát sinh 2 ngày lễ liên tiếp chỉ cộng 1 cho ngày lễ thứ nhất, tôi đã từ chối.
Cảm ơn anh và mọi người đã giúp đỡ tận tình ạ. Do trong quá trình làm phát sinh các lỗi em không lường trước được nên vấn đề cứ phát sinh dẫn đến làm phiền mọi người ạ. Ví dụ: dữ liều ban đầu là em chỉ dùng ngày hiện tại nhưng em muốn sử dụng các trường hợp khác nữa nên mới phát sinh như vậy hoặc khi chạy ra dữ liệu ra thì có những ngày trùng ngày nghỉ lễ nên phải tạo lịch nghỉ lễ để tránh những ngày đó.
 
Web KT

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

Back
Top Bottom