728x90
반응형
기간사이 특정요일 개수알아내기
728x90
function CountWeek(StartDate, EndDate : TDate; CheckWeek : Integer) : Integer;
var
DayNum, StartWeek : Integer;
begin
DayNum := Trunc(Int(EndDate - StartDate)); // MATH Unit 사용을 하지 않았을 경우
if StartDate > EndDate then
StartWeek := DayOfWeek(EndDate)
else
StartWeek := DayOfWeek(StartDate);
// StartWeek := DayOfWeek(Max(StartDate,EndDate)); // MATH Unit 사용시
Result := DayNum div 7;
if CheckWeek = StartWeek then
inc(Result);
if (DayNum mod 7) <> 0 then
if ((StartWeek + (DayNum mod 7)) mod 7) >= StartWeek then
inc(Result);
end;
사용방법
//시작일 , 마지막날짜 , 일:1 월:2 화:3 수:4 목:5 금:6 토:7
CountWeek( DateTimePicker1.Date, now, 1 );
728x90
반응형
'Delphi > 프로시저-함수' 카테고리의 다른 글
최상위 윈도우 얻기 (0) | 2023.11.01 |
---|---|
델파이 숫자 한글변환 (0) | 2023.10.27 |
태스크바 (taskbar) 에서 숨기기 (0) | 2023.08.01 |
시스템 날짜바꾸기 (0) | 2023.07.27 |
Hook(훅) SetWindowsHookEx (0) | 2023.07.07 |
댓글