엑셀에서 DATE 함수의 일 인수에 32768 이상의 값을 사용하지 못하는 이유

익명
2023-05-25T06:54:12+00:00

=DATE(1900,1,0)+45000 은 되고

=DATE(1900,1,45000) 은 안되는 이유를 모르겠습니다.

Microsoft 365 및 Office | Excel | 기타 | Windows

잠긴 질문. 이 질문은 Microsoft 지원 커뮤니티에서 마이그레이션되었습니다. 질문이 도움이 되었는지 여부에 대해 응답할 수는 있지만, 메모나 회신을 추가하거나 질문을 따를 수는 없습니다.

댓글 0개 설명 없음
질문 작성자가 수락한 답변
익명
2023-05-26T09:15:53+00:00

예, DATE 함수에 대한 인수로 사용되는 값의 데이터 유형이 int16이라는 것을 이해할 수 있습니다. 이는 DATE 함수에서 year, month, day 인수가 정수가 될 것으로 예상하기 때문입니다. VBA의 16비트 정수 유형은 Integer이므로 DATE 함수는 계산을 수행하기 전에 암시적으로 연도, 월 및 일 인수를 정수로 변환합니다.

그러나 이 경우 DATE 함수를 사용할 필요가 없습니다. TEXT 함수를 사용하여 A1 셀의 날짜를 문자열로 변환 할 수 있습니다. TEXT 함수는 변환할 값과 사용할 형식이라는 두 개의 인수를 사용합니다. 이 경우 변환할 값은 A1 셀의 날짜이고 사용할 형식은 "mm/dd/yyyy"입니다.

다음 수식은 A1 셀의 날짜를 "mm/dd/yyyy" 형식의 문자열로 변환합니다.

=TEXT(A1,"mm/dd/yyyy")

이 수식은 다음 값을 반환합니다.

05/26/2023

이 값은 DATE 함수가 반환한 값과 동일합니다. 그러나 TEXT 함수는 날짜를 문자열로 변환하는 보다 효율적인 방법입니다.

다른 질문이 있거나 도움이 필요하면 주저하지 말고 알려주십시오. 당신을 돕게 되어 기쁩니다.

감사합니다 스네하

지역 사회에 환원하십시오. 이 답변이 문제를 해결했는지 여부를 표시하여 이 문제가 있는 다음 사람을 돕습니다. 하단에서 예 또는 아니요를 클릭합니다.

자동 번역된 답변으로, 문법 오류나 어색한 표현이 있을 수 있습니다.

이 대답이 도움이 되었나요?

1명이 이 답변이 도움이 된다고 생각했습니다.
댓글 0개 설명 없음

2 추가 답변

정렬 기준: 가장 유용함
  1. 익명
    2023-05-26T00:51:56+00:00

    이런 작업이 앞으로 필요하지도 않을 것 같고,

    필요하더라도 이 방법이 좋은 방법으로 보이지는 않습니다만

    이유가 궁금해서 질문 했습니다.

    stackoverflow(Is the "Short" data type available in Excel VBA? - Stack Overflow) 에서

    short is a language alias for System.Int16.

    The 16-bit integer type in VBA is Integer.

    라는 내용을 찾았는데 DATE 함수의 인수로 사용되는 값의 자료형이 int16 이라서

    이런 결과가 나온다고 이해하면 될까요?

    이 대답이 도움이 되었나요?

    댓글 0개 설명 없음
  2. 익명
    2023-05-25T07:52:57+00:00

    안녕

    저는 Sneha이고 귀하의 질문에 기꺼이 도움을 드리겠습니다. 불편을 드려 죄송합니다.

    Excel에서 날짜는 일련 번호 1이 할당된 1900년 1월 1일부터 순차적 일련 번호로 저장됩니다. 그 이후에는 매일 고유한 일련 번호가 부여되므로 Excel에서 날짜에 대한 계산 및 조작을 정확하게 수행할 수 있습니다.

    'DATE' 함수를 사용할 때 년, 월, 일의 세 가지 인수가 필요합니다. Excel의 day 인수는 날짜를 나타내는 1에서 31 사이의 값이어야 합니다. 이 범위는 지정된 월의 최대 일 수를 기준으로 합니다.

    그러나 일 인수에 32,768 이상의 값을 사용하려고 하면 Excel에서 잘못된 것으로 간주됩니다. 이는 허용되는 범위인 1에서 31을 초과하기 때문입니다. Excel은 day 인수가 한 달 내의 유효한 날짜에 해당한다고 가정하여 표준 날짜 형식 및 계산을 사용하도록 특별히 설계되었습니다.

    31일 이상의 많은 일을 나타내야 하는 요구 사항이 있는 경우 Excel에서 대체 방법이나 수식을 탐색해야 할 수 있습니다. 예를 들어, 특정 요구 사항에 따라 원하는 계산을 처리하기 위해 추가 열이나 함수를 사용하는 것을 고려할 수 있습니다.

    이것이 당신이 직면 한 한계를 명확히하기를 바랍니다.

    자세한 내용은 다음 리소스를 참조하십시오.

    1. DAY 기능 - https://support.microsoft.com/office/day-function-8a7d1cbb-6c7d-4ba1-8aea-25c134d03101
    2. Excel 사양 및 제한 사항 - https://support.microsoft.com/office/excel-specifications-and-limits-1672b34d-7043-467e-8e27-269d656771c3

    다른 질문이 있거나 도움이 필요하면 주저하지 말고 알려주십시오. 당신을 돕게 되어 기쁩니다.

    감사합니다 스네하

    지역 사회에 환원하십시오. 이 답변이 문제를 해결했는지 여부를 표시하여 이 문제가 있는 다음 사람을 돕습니다. 하단에서 예 또는 아니요를 클릭합니다.

    자동 번역된 답변으로, 문법 오류나 어색한 표현이 있을 수 있습니다.

    이 대답이 도움이 되었나요?

    댓글 0개 설명 없음