남극

형변환 함수 사용하기 (Excel) 본문

MS/Excel

형변환 함수 사용하기 (Excel)

펭1구 2020. 4. 25. 11:31

 

형 변환 하기

값을 사용하다 보면 값의 type이 원하는 type으로 설정해줄 수 없을 때가 있습니다. 그럴 때 형식을 변환해준다, 즉 type을 변환해주는 것을 형 변환이라고 합니다.

 

CBool Boolean
CDate Date
CDbl Double
CInt Integer
CLng Long
CStr String
Cvar Variant

함수는 이렇게 있습니다. 왼쪽이 함수이고 오른쪽이 반환하는 type입니다.

 

이 중에서 중요한 몇 가지에 대한 예제를 보면서 이해해보도록 합시다.

 

CLong, CInt

두 함수는 형식이 같습니다. 둘 다 정수형으로 바뀌는 성질을 가지고 있으며 소수점에서 반올림을 합니다.

 

Sub 프로시저()
   Dim rs1 As Long
   Dim rs2 As Long
   
   rs1 = CLng(12.34)
   rs2 = CInt(13.5)
   Debug.Print rs1
   Debug.Print rs2
End Sub

결과를 봅시다.

 

rs1은 "버림"이 되어서 12가 되었고 rs2는 "올림"이 되어서 14가 된 것을 확인하실 수 있습니다.

 

CStr

받은 값을 String으로 형 변환해주는 함수입니다.

Sub 프로시저()
   Dim rs1 As String
   
   rs1 = CStr(12.34)
   Debug.Print rs1
End Sub

String으로 바꿔주기에 그대로 문자열로 바뀌게 됩니다.

현재 문자가 반환된 값입니다.

 

이제 나머지 함수들과는 형 변환을 할 때 조금 다른 인자 값을 넣어주어야 하는 함수들을 살펴보도록 하겠습니다.

 

CBool

Boolean type으로 바꾸어주는 함수입니다. 특이하게도 인자 값을 비교문으로 넣어주어야 합니다. true나 false를 넣으면 형 변환을 할 의미가 없기에 하지 않습니다.

Sub 프로시저()
   Const rs1 As Integer = 1
   Const rs2 As Integer = 2
   Dim check As Boolean
   
   check = CBool(rs1 < rs2)
   Debug.Print check
End Sub

rs1과 rs2는 그냥 상수를 넣어주었습니다. 이러한 형식이 다를 이해해주시기를 바랍니다.

결과가 잘 나오는 것을 볼 수 있습니다.

 

CDate

Date type으로 형 변환해주는 함수입니다. 인자 값을 날짜 형식으로 넣어주어야 합니다.

Sub 프로시저()
    Dim dt As Date
    dt = CDate("2020-04-25")
   Debug.Print dt
End Sub

꼭 이 날짜 형식이 아니더라도 형 변환이 가능합니다. ex) "yyyy년mm월dd일"

잘 나왔네요 ㅎ

 

'MS > Excel' 카테고리의 다른 글

사용자 정의 폼 (Excel)  (0) 2020.04.25
시트 함수 사용하기 (Excel)  (0) 2020.04.25
Split, 값 나눠서 배열에 넣기 (Excel)  (0) 2020.04.24
Replace 함수 (Excel)  (2) 2020.04.24
메시지 박스 제대로 활용하기 (Excel)  (1) 2020.04.24
Comments