형식 지정 식에 있는 명령에 따라 형식이 지정된 식을 포함하는 Variant(String)를 반환합니다.
| 경고 이 함수를 사용하는 데 문제가 있습니다. 일부 연도의 마지막 월요일은 1주차여야 하는데 53주차로 반환될 수 있습니다. 자세한 내용 및 해결 방법은 Format 또는 DatePart 함수가 연도의 마지막 월요일에 대해 잘못된 주 번호를 반환할 수 있음을 참조하세요. |
|---|
구문
Format( *expression [, format ] [, firstdayofweek ] [, firstweekofyear ] )
Format 함수 구문에는 다음과 같은 인수가 사용됩니다.
| 인수 | 설명 |
|---|---|
| expression | 필수 요소입니다. 유효한 식입니다. |
| 형식 | 선택 요소입니다. 유효한 명명된 형식 또는 사용자 정의 형식 식입니다. |
| firstdayofweek | 선택 요소입니다. 요일의 첫 번째 요일을 지정하는 상수입니다. |
| FirstWeekOfYear | 선택 요소입니다. 연도의 첫 번째 주를 지정하는 상수입니다. |
설정
format 인수는 식 인수의 데이터 형식에 따라 다양한 설정을 사용할 수 있습니다. 유효한 형식 식에 대한 자세한 내용은 다음 표에 나열된 문서를 참조하세요.
| 이 데이터 형식을 사용하는 식의 경우... | 문서 보기 |
|---|---|
| 모든 형식 | Format 속성 |
| 날짜/시간 | 날짜 및 시간 필드 데이터 서식 지정하기 |
| 숫자 | 숫자 또는 통화 필드 서식 지정 |
| 텍스트 및 메모 | 텍스트 필드 서식 지정 |
| 예/아니요 | 형식/Format 속성 - Yes/No 데이터 형식 |
firstdayofweek 인수에는 다음과 같은 설정이 있습니다.
| 상수 | Value | 설명 |
|---|---|---|
| vbUseSystem | 0 | NLS API 설정을 사용합니다. |
| VbSunday | 1 | 일요일(기본값) |
| vbMonday | 2 | 월요일 |
| vbTuesday | 3 | 화요일 |
| vbWednesday | 4 | 수요일 |
| vbThursday | 5 | 목요일 |
| vbFriday | 6 | 금요일 |
| vbSaturday | 7 | 토요일 |
firstweekofyear 인수에는 다음과 같은 설정이 있습니다.
| 상수 | Value | 설명 |
|---|---|---|
| vbUseSystem | 0 | NLS API 설정을 사용합니다. |
| vbFirstJan1 | 1 | 1월 1일이 발생하는 주부터 시작합니다(기본값). |
| vbFirstFourDays | 2 | 한 해에 최소 4일 이상인 첫 주부터 시작합니다. |
| vbFirstFullWeek | 3 | 한 해의 첫 번째 주부터 시작하세요. |
주의
| To 서식 지정 | 실행할 작업 |
|---|---|
| 숫자 | 미리 정의된 명명된 숫자 형식을 사용하거나 사용자 정의 숫자 형식을 만듭니다. |
| 날짜 및 시간 | 미리 정의된 명명된 날짜/시간 형식을 사용하거나 사용자 정의 날짜/시간 형식을 만듭니다. |
| 날짜 및 시간 일련 번호 | 날짜 및 시간 형식이나 숫자 형식을 사용합니다. |
| 문자열 | 사용자 정의 문자열 형식을 직접 만듭니다. |
형식을 지정하지 않고 숫자의 서식을 지정하려는 경우 형식은 국제적으로 인식되기는 하지만 Str 함수와 유사한 기능을 제공합니다. 그러나 형식을 사용하여 문자열로 서식이 지정된 양수에는 값 부호용으로 예약된 선행 공백이 포함되지 않습니다. Str 을 사용하여 변환된 항목은 선행 공백을 유지합니다.
지역화되지 않은 숫자 문자열의 서식을 지정하는 경우 사용자 정의 숫자 형식을 사용하여 원하는 모양을 얻어야 합니다.
참고
Calendar 속성 설정이 양력이고 형식이 날짜 서식을 지정하는 경우 제공된 식은 양력이어야 합니다. Visual Basic Calendar 속성 설정이 회교식인 경우 제공된 식은 회교식이어야 합니다.
달력이 양력인 경우 형식 식 기호의 의미는 변경되지 않습니다. 달력이 회교식인 경우 모든 날짜 형식 기호(예: dddd, mmmm, yyyy)는 동일한 의미를 갖지만 회교식 달력에 적용됩니다. 형식 기호는 영어로 유지됩니다. 텍스트가 표시되는 기호(예: AM 및 PM)는 해당 기호와 연결된 문자열(영어 또는 아랍어)을 표시합니다. 달력이 회교식이면 특정 기호의 범위가 변경됩니다.
| 기호 | 범위 |
|---|---|
| d | 1-30 |
| dd | 1-30 |
| ww | 1-51 |
| mmm | 전체 월 이름을 표시합니다(회교식 월 이름에는 약어가 없음). |
| y | 1-355 |
| yyyy | 100-9666 |
예제
식에서 Format 함수 사용 식을 사용할 수 있는 모든 곳에서 형식을 사용할 수 있습니다. 예를 들어 필드 별칭의 일부로 쿼리에 사용하거나 폼 또는 보고서에 있는 텍스트 상자의 컨트롤 원본 속성에서 사용할 수 있습니다. 다음 예제에서는 보고서의 필터 속성에서 출력을 이전 주의 레코드로 제한하는 데 사용할 수 있는 식을 보여 줍니다.
Format([Date],"ww")=Format(Now(),"ww")-1
이 예제에서 보고서의 레코드 원본에는 날짜라는 필드가 있습니다. 이 필드에는 각 특정 레코드가 수정된 날짜가 포함되어 있으며 보고서에서 사용됩니다. 보고서를 실행하면 날짜 필드의 값에 대한 주(Format([Date],"ww"))가 이전 주(Format(Now(),"ww")-1)와 같은 레코드만 표시하도록 결과가 필터링됩니다.
VBA 코드에서 Format 함수 사용
참고
VBA(Visual Basic for Applications) 모듈에서 이 함수를 사용하는 경우를 예로 들어 보겠습니다. VBA 사용에 대해 자세히 알아보려면 검색 옆의 드롭다운 목록에서 개발자 참고를 선택하고 검색 상자에 검색어를 하나 이상 입력하세요.
이 예제에서는 명명된 형식과 사용자 정의 형식을 모두 사용하여 값의 서식을 지정하는 Format 함수의 다양한 사용을 보여 줍니다. 날짜 구분 기호(/), 시간 구분 기호(:) 및 AM/PM 리터럴의 경우 시스템에서 표시하는 실제 서식 출력은 코드가 실행되는 컴퓨터의 로캘 설정에 따라 달라집니다. 개발 환경에 시간과 날짜가 표시되면 코드 로캘의 짧은 시간 형식과 짧은 날짜 형식이 사용됩니다. 실행 중인 코드로 표시할 때 시스템 로캘의 짧은 시간 형식과 짧은 날짜 형식이 사용되며 코드 로캘과 다를 수 있습니다. 이 예에서는 미국 영어 로캘을 가정합니다.
MyTime
MyDate 현재 시스템 짧은 시간 설정 및 짧은 날짜 설정을 사용하여 개발 환경에 표시됩니다.
Dim MyTime, MyDate, MyStr
MyTime = #17:04:23#
MyDate = #January 27, 1993#
' Returns current system time in the system-defined long time format.
MyStr = Format(Time, "Long Time")
' Returns current system date in the system-defined long date format.
MyStr = Format(Date, "Long Date")
MyStr = Format(MyTime, "h:m:s") ' Returns "17:4:23".
MyStr = Format(MyTime, "hh:mm:ss AMPM") ' Returns "05:04:23 PM".
MyStr = Format(MyDate, "dddd, mmm d yyyy") ' Returns "Wednesday,
' Jan 27 1993".
' If format is not supplied, a string is returned.
MyStr = Format(23) ' Returns "23".
' User-defined formats.
MyStr = Format(5459.4, "##,##0.00") ' Returns "5,459.40".
MyStr = Format(334.9, "###0.00") ' Returns "334.90".
MyStr = Format(5, "0.00%") ' Returns "500.00%".
MyStr = Format("HELLO", "<") ' Returns "hello".
MyStr = Format("This is it", ">") ' Returns "THIS IS IT".
길이가 0인 문자열에 형식 사용
Microsoft Access 2.0 이하에서는 Format 함수를 사용하여 길이가 0인 문자열에 대해 하나의 값을 반환하고 값에 대해 다른 값을 반환할 수 있었습니다. 예를 들어 Format 함수와 함께 다음과 같은 형식 식을 사용하여 코드에서 적절한 문자열 값을 반환할 수 있습니다.
Dim varX As Variant
Dim varStrX As Variant
' Assign some value to varStrX and pass to Format function.
varX = Format(varStrX, "@;ZLS;Null")
Microsoft Access 버전 97 이상에서는 Null 사례에 대해 별도로 테스트한 다음 결과에 따라 적절한 값을 반환해야 합니다. 예를 들어 다음과 같은 Format 함수를 사용하여 식에 IIf 함수를 사용할 수 있습니다.
varX = IIf(IsNull(varStrX),"Null", Format(varStrX, "@;ZLS"))
이 변경 내용은 길이가 0인 문자열인지 Null 값인지에 따라 문자열 서식을 지정하는 데 Format 함수를 사용할 때만 적용됩니다. Format 함수와 함께 사용되는 다른 서식 식은 이전 버전에서와 마찬가지로 계속 작동합니다.
데이터베이스를 Microsoft Access 버전 2.0 이하에서 Microsoft Access 2002 이상으로 변환하는 경우 Null 사례에 대해 별도로 테스트하도록 코드를 변경해야 합니다.