Friday, January 26, 2007
Excel/엑셀 VBA] 2진수 10진수 변환 함수; 이진수 십진수; Dec To Bin / Bin To Dec
엑셀 "추가 기능"에 2진수/10진수 변환 함수가 있긴 있는데, 511 (이진수로는 111111111)을 초과하는 숫자를 다루지 못하는 등의 버그 또는 한계가 있습니다: ▶▶ Excel/엑셀] 2진수 10진수 변환 함수; 이진수 십진수; DEC2BIN / BIN2DEC
그래서 추가 기능 없이도 쓸 수 있고, 큰 숫자도 다룰 수 있는 함수가 필요합니다.
아래는, 일본어판 지식 검색 사이트에서 dec2bin 으로 검색하면 나오는 소스입니다: ▶▶ 일본어판 지식 검색: 教えて!goo (Oshiete goo); 일본의, 네이버 지식인에 해당
(엑셀에서 Alt+F11키를 눌러, 비베 에디터를 실행하고, 비베 에디터 메뉴의, "삽입 > 모듈"을 선택한 후, 다음 코드를 붙여 넣습니다.)
decToBin() : 10진수를 2진수로 변환하는 함수
binToDec() : 2진수를 10진수로 변환하는 함수
이제 엑셀 시트에서 셀에
=decToBin(553256646)
이라고 하면, 10진수가 2진수로
100000111110100000011011000110
이렇게 변환됩니다.
또한
=binToDec("100000111110100000011011000110")
이렇게 하면, 2진수인
100000111110100000011011000110
이, 10진수인 553256646 으로 변환됩니다.
VBA로 16진수 변환 함수: ▶▶ Excel/엑셀] 16진수 10진수 변환 VBA 함수로, 십육진수/십진수를 추가 기능 없이; hexToDec decToHex
16진법 2진법 10진수, 아스키 유니코드 상호 변환기: ▶▶ 16진수 헥사, 2진수, 10진수, 8진법 변환 계산기; Hex Calc
그래서 추가 기능 없이도 쓸 수 있고, 큰 숫자도 다룰 수 있는 함수가 필요합니다.
아래는, 일본어판 지식 검색 사이트에서 dec2bin 으로 검색하면 나오는 소스입니다: ▶▶ 일본어판 지식 검색: 教えて!goo (Oshiete goo); 일본의, 네이버 지식인에 해당
비베: 2진수 <-> 10진수 상호 변환 함수; Base-2 (Binary)
(엑셀에서 Alt+F11키를 눌러, 비베 에디터를 실행하고, 비베 에디터 메뉴의, "삽입 > 모듈"을 선택한 후, 다음 코드를 붙여 넣습니다.)
Function decToBin(Dec As Long) As String
Do
decToBin = CStr(Dec Mod 2) & decToBin
Dec = Dec \ 2
Loop Until Dec = 0
End Function
Function binToDec(Bin As String) As Long
For i = 1 To Len(Bin)
binToDec = binToDec * 2 + CInt(Mid(Bin, i, 1))
Next
End Function
Do
decToBin = CStr(Dec Mod 2) & decToBin
Dec = Dec \ 2
Loop Until Dec = 0
End Function
Function binToDec(Bin As String) As Long
For i = 1 To Len(Bin)
binToDec = binToDec * 2 + CInt(Mid(Bin, i, 1))
Next
End Function
decToBin() : 10진수를 2진수로 변환하는 함수
binToDec() : 2진수를 10진수로 변환하는 함수
이제 엑셀 시트에서 셀에
=decToBin(553256646)
이라고 하면, 10진수가 2진수로
100000111110100000011011000110
이렇게 변환됩니다.
또한
=binToDec("100000111110100000011011000110")
이렇게 하면, 2진수인
100000111110100000011011000110
이, 10진수인 553256646 으로 변환됩니다.
VBA로 16진수 변환 함수: ▶▶ Excel/엑셀] 16진수 10진수 변환 VBA 함수로, 십육진수/십진수를 추가 기능 없이; hexToDec decToHex
16진법 2진법 10진수, 아스키 유니코드 상호 변환기: ▶▶ 16진수 헥사, 2진수, 10진수, 8진법 변환 계산기; Hex Calc
tag: office
엑셀 Excel | 워드 Word | VBA 매크로 | 오피스
<< Home