Как да конвертирате десетични градуси в градуси минути секунди в Excel?
Понякога може да имате списък с данни, показани като десетични градуси в работен лист, и сега трябва да преобразувате десетичните градуси в градуси, минути и секунди във форматиране, както е показано на следните екранни снимки, как можете бързо да получите разговора в Excel?
Преобразувайте десетични градуси в градуси, минути, секунди с VBA
Преобразувайте градуси, минути, секунди в десетични градуси с VBA
Преобразувайте десетични градуси в градуси, минути, секунди с VBA
Моля, следвайте стъпките по-долу, за да преобразувате десетичните градуси в градуси, минути и секунди с VBA код.
1. държа ALT бутон и натиснете F11 на клавиатурата, за да отворите a Microsoft Visual Basic за приложение прозорец.
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. На екрана се показва диалогов прозорец, в който можете да изберете клетките, които искате да конвертирате. Вижте екранна снимка:
5. кликване OK, след което избраните данни се преобразуват в градуси, минути и секунди. Вижте екранна снимка:
тип: Използването на горния VBA код ще загуби вашите оригинални данни, така че е по-добре да копирате данните, преди да стартирате кода.
Преобразувайте градуси, минути, секунди в десетични градуси с VBA
Понякога може да искате да конвертирате данните във форматиране на градуси/минути/секунди в десетични градуси, следният VBA код може да ви помогне бързо да го направите.
1. държа ALБутон T и натиснете F11 на клавиатурата, за да отворите прозорец на Microsoft Visual Basic for Application.
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""" представлява градусът, който искате да преобразувате в десетичен градус, можете да го промените според нуждите), след което щракнете върху Въведете бутон. Вижте екранни снимки: