KutoolsforOffice— 하나의 솔루션, 다섯 가지 강력한 도구。적은 노력으로 더 큰 성과。

Excel 에서 십진수 각도를 도, 분, 초로 변환하려면 어떻게 하나요?

작성자수정 날짜

워크시트에 십진수 각도로 표시된 데이터 목록이 있을 수 있습니다. 이제 이 십진수 각도를 아래 스크린샷과 같이 도, 분, 초 형식으로 변환해야 하는 경우, Excel 에서 빠르게 변환하려면 어떻게 해야 할까요?

십진수 도 단위 데이터화살표도 분 초 단위 데이터

VBA 를 사용하여 십진수 각도를 도, 분, 초로 변환하기

VBA 를 사용하여 도, 분, 초를 십진수 각도로 변환하기


파란색 오른쪽 말풍선 화살표 VBA 를 사용하여 십진수 각도를 도, 분, 초로 변환하기

아래 단계에 따라 VBA 코드를 사용해 십진수 각도를 도, 분, 초로 변환하세요。

1. ALT키를 누른 상태에서F11키를 눌러Microsoft Visual Basic for Applications창을 엽니다。

2. 삽입>모듈을 클릭하고 VBA 코드를 모듈에 복사합니다。

VBA: 십진수 각도를 도, 분, 초로 변환하기

Sub ConvertDegree()
'Update 20130815
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
For Each Rng In WorkRng
    num1 = Rng.Value
    num2 = (num1 - Int(num1)) * 60
    num3 = Format((num2 - Int(num2)) * 60, "00")
    Rng.Value = Int(num1) & "°" & Int(num2) & "'" & Int(num3) & "''"
Next
End Sub

3. 실행버튼을 클릭하거나F5키를 눌러 VBA 를 실행합니다。

4. 화면에 대화 상자가 표시되며, 변환할 셀을 선택할 수 있습니다。 스크린샷 참조:

변환할 데이터를 선택하는 VBA 코드

5. 확인을 클릭하면 데이터 선택가 도, 분, 초로 변환됩니다。 스크린샷 참조:

원본 데이터화살표변환 결과

: 위의 VBA 코드를 사용하면 원본 데이터가 손실되므로, 코드 실행 전에 데이터를 복사해 두는 것이 좋습니다。



파란색 오른쪽 말풍선 화살표 VBA 를 사용하여 도, 분, 초를 십진수 각도로 변환하기

때로는 도/분/초 형식의 데이터를 십진수 각도로 변환하고 싶을 수 있습니다。 다음 VBA 코드를 사용하면 이를 빠르게 처리할 수 있습니다。

1. ALT키를 누른 상태에서F11키를 눌러 Microsoft Visual Basic for Applications 창을 엽니다。

2. 클릭하세요삽입>모듈을 클릭하고 VBA 코드를 모듈에 복사합니다。

VBA: 도, 분, 초를 십진수 각도로 변환하기

Function ConvertDecimal(pInput As String) As Double
'Updateby20140227
Dim xDeg As Double
Dim xMin As Double
Dim xSec As Double
xDeg = Val(Left(pInput, InStr(1, pInput, "°") - 1))
xMin = Val(Mid(pInput, InStr(1, pInput, "°") + 2, _
             InStr(1, pInput, "'") - InStr(1, pInput, _
             "°") - 2)) / 60
xSec = Val(Mid(pInput, InStr(1, pInput, "'") + _
            2, Len(pInput) - InStr(1, pInput, "'") - 2)) _
            / 3600
ConvertDecimal = xDeg + xMin + xSec
End Function

3. 코드를 저장하고 이 창 닫기, 빈 셀(예: 셀 A1)을 선택한 후 다음 수식을 입력합니다。=ConvertDecimal(「10° 27' 36」「」)(「10° 27' 36」「」는 십진수 각도로 변환하려는 각도를 나타내며, 필요에 따라 변경할 수 있음), 그 후Enter키를 누릅니다。 스크린샷 참조:

수식 입력화살표도, 분, 초를 십진수 도로 변환한 결과

관련 문서