Excel VBA IsDate 함수 이해

VBA의 IsDate 함수는 텍스트 문자열을 날짜로 해석할 수 있는지 여부를 알려줍니다. 예를 들어 다음 표현식은 모두 True로 평가됩니다.

IsDate(“2015년 5월 25일”)
IsDate("1월 16일")
날짜("12-1")
날짜("12/1/15")
날짜("2/30")
날짜("30/2")

마지막 두 예에서 IsDate는 일과 월의 순서에 대해 까다롭지 않습니다. 이 두 문자열은 모두 날짜로 해석될 수 있으므로 IsDate는 시스템 날짜 형식 설정에 관계없이 True를 반환합니다.

다음은 Microsoft 지원 문서 의 일부 정보입니다 .

VBA 날짜 함수 IsDate, Format, CDate 및 CVDate는 OLE 자동화(OleAut32.dll)에 있는 함수를 활용합니다. 이 함수는 날짜를 나타내는 문자열에서 분리된 각 값을 토큰화하여 가능한 모든 날짜 형식을 검색하고 입력이 날짜로 표시될 수 있는지 여부를 나타내는 부울 값을 반환합니다.

함수를 사용하여 2자리 연도가 포함된 날짜를 해석할 때 이 점을 기억하는 것이 중요합니다. 다른 로케일은 다양한 날짜 형식(즉, mm/dd/yy, yy/mm/dd, " DD MMM YY " , " YY MMM DD " 등)을 사용하므로 함수는 다음이 될 때까지 모든 위치에서 숫자를 시도합니다. 함수가 유효한 날짜를 찾았거나 모든 가능성을 소진했습니다.

IsDate가 문자열을 날짜로 인식한다고 해서 문자열을 날짜로 안정적으로 변환할 수 있다는 의미는 아닙니다. 어떤 경우에는 결과가 모호합니다. 예를 들어 이 표현은 어떻습니까?

IsDate(“2001년 2월 29일”)

2001년 2월 29일은 유효한 날짜가 아닙니다. 그러나 이 표현식은 1929년 2월 1일(및 1929년 1월 2일)이 유효한 날짜이기 때문에 True를 반환합니다. 2029년의 날짜도 마찬가지입니다.

IsDate 문서에 대한 검색이 비어 있습니다. 테스트를 기반으로 IsDate는 슬래시(/), 하이픈(-), 쉼표(,), 점(.) 및 공백과 같은 구분 문자를 허용합니다.

따라서 다음 표현식은 모두 True를 반환합니다.

날짜("5.1")
날짜("30 6")
날짜("30,6")
날짜("1/2")

그러나 다음과 같은 예외가 있습니다. 다음 표현식은 True를 반환합니다.

날짜("5.1.5")
날짜("5.1.05")

그러나 이 표현식은 명시적으로 False를 반환합니다.

IsDate("2005년 5월 1일")

사용자가 날짜를 입력하는 InputBox가 있는 UserForm을 생성했다고 가정합니다. 항목의 유효성을 검사하기 위해 IsDate를 사용하는 것은 그다지 안정적이지 않습니다.

IsDate가 시간 값도 포함한다는 것을 알게 되면 상황이 더욱 혼란스러워집니다. (해당하는 IsTime 함수가 없습니다.) 따라서 다음 표현식은 모두 True를 반환합니다.

날짜("4:45")
날짜("4.45")
날짜("4 45")
날짜("4/45")
날짜("23:59")

다음 표현식은 False를 반환합니다.

날짜("4:60")
날짜("24.45")

Range 인수를 전달할 때 IsDate가 이러한 모든 단점을 나타내지는 않는다는 점을 지적하는 것이 중요합니다. 예를 들어:

IsDate(범위("A1"))

IsDate는 날짜 또는 시간이 포함된 셀을 식별하는 데 완벽하게 신뢰할 수 있는 것 같습니다. 예를 들어 날짜로 5.1이 포함된 셀은 식별하지 않습니다. 코드에서 문자열을 날짜로 해석할 수 있는지 여부를 결정해야 하는 경우 가장 좋은 해결책은 해당 문자열을 셀에 넣은 다음 셀 내용을 확인하는 코드를 작성하는 것입니다.


스마트시트 9.1.1

스마트시트 9.1.1

Smartsheet는 프로젝트를 관리하고, 워크플로를 구축하고, 팀과 협업할 수 있는 동적 작업 플랫폼입니다.

공유 지점

공유 지점

SharePoint는 다양한 워크플로 응용 프로그램, "목록" 데이터베이스 및 기타 웹 구성 요소는 물론 보안 기능을 사용하여 비즈니스 그룹의 공동 작업을 제어하는 ​​웹 기반 공동 작업 시스템입니다.

퍼페추얼 캘린더 1.0.38/1.0.36

퍼페추얼 캘린더 1.0.38/1.0.36

반니엔 캘린더(Van Nien Calendar)는 휴대폰에서 달력 보기 애플리케이션으로, 휴대폰에서 태음태양일을 빠르게 확인하고 중요한 업무를 정리할 수 있도록 도와줍니다.

마이크로소프트 아웃룩 2021

마이크로소프트 아웃룩 2021

Microsoft Outlook은 Microsoft Corporation에서 개발한 비즈니스 및 생산성 응용 프로그램입니다.

클릭업

클릭업

ClickUp은 모든 비즈니스에서 가장 높은 평가를 받는 생산성 플랫폼 중 하나입니다. Google, Booking.com, San Diego Padres 및 Uber와 같은 대기업은 모두 ClickUp을 사용하여 직장 생산성을 높입니다.

PDF-XChange 뷰어 2.5.322.10

PDF-XChange 뷰어 2.5.322.10

PDF는 텍스트 문서를 읽고, 만들고, 보내는 데 일반적으로 사용되는 형식이 되었습니다. 결과적으로 이러한 유형의 문서화에 사용되는 프로그램 수가 증가했습니다. PDF-XChange Viewer는 점점 더 많은 PDF 뷰어 중 하나입니다.

아파치 오픈오피스

아파치 오픈오피스

Apache OpenOffice는 특히 Excel, PowerPoint 및 Word에서 Microsoft 365에 필적하는 완전한 Office 애플리케이션 제품군을 제공합니다. 프로젝트를 보다 효과적으로 관리할 수 있으며 다양한 파일 형식을 지원합니다.

iTaxviewer 1.8.7 다운로드

iTaxviewer 1.8.7 다운로드

iTaxViewer 소프트웨어는 오늘날 가장 널리 사용되는 XML 파일 읽기 소프트웨어입니다. 이 소프트웨어는 국세청의 XML 형식으로 된 전자 세금 신고서를 읽기 위한 애플리케이션입니다.

니트로 PDF 리더

니트로 PDF 리더

Nitro PDF Reader는 대부분의 사람들이 PDF 문서로 매일 수행하는 모든 기본 작업을 다루는 편리한 PDF 편집기입니다.

Foxit 리더 12

Foxit 리더 12

Foxit Reader는 기본적으로 PDF 리더이며 PDF 파일을 생성하고, 서명하고, 편집하고, 주석을 추가할 수도 있습니다. 운영 체제에서 작동하며 Microsoft Office 패키지의 다양한 프로그램에 대한 플러그인이 있습니다.