KutoolsforOffice — Eén oplossing, vijf krachtige tools.Meer bereiken met minder moeite.

Hoe zet u decimale graden om naar graden, minuten en seconden in Excel?

AuteurSun Wijzigingsdatum

Soms hebt u een lijst met gegevens in decimale graden in een werkblad en moet u deze omzetten naar de notatie van graden, minuten en seconden, zoals te zien in de volgende schermafbeeldingen. Hoe voert u deze conversie snel uit in Excel?

decimale graden gegevenspijlgraden minuten seconden gegevens

Decimale graden omzetten naar graden, minuten en seconden met VBA

Graden, minuten en seconden omzetten naar decimale graden met VBA


blauwe pijl naar rechts met bubbel Decimale graden omzetten naar graden, minuten en seconden met VBA

Volg onderstaande stappen om decimale graden om te zetten naar graden, minuten en seconden met behulp van VBA-code.

1. Houd de ALT-toets ingedrukt en druk op F11 op het toetsenbord om een Microsoft Visual Basic for Applications-venster te openen.

2. Klik op Invoegen > Module en plak de VBA-code in de module.

VBA: Decimale graad omzetten naar graden, minuten en seconden

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. Klik op de knop Uitvoeren of druk op F5 om de VBA-code uit te voeren.

4. Er verschijnt een dialoogvenster op het scherm; selecteer daarin de cellen die u wilt converteren. Zie schermafbeelding:

vba-code om de te converteren gegevens te selecteren

5. Klik op OK, waarna de geselecteerde gegevens worden omgezet naar graden, minuten en seconden. Zie schermafbeelding:

oorspronkelijke gegevenspijlconversieresultaat

Tip: De bovenstaande VBA-code overschrijft uw oorspronkelijke gegevens, dus maak eerst een kopie van uw gegevens voordat u de code uitvoert.



blauwe pijl naar rechts met bubbel Graden, minuten en seconden omzetten naar decimale graden met VBA

Soms wilt u gegevens in de notatie graden/minuten/seconden omzetten naar decimale graden. De volgende VBA-code helpt u dit snel en eenvoudig te doen.

1. Houd de ALT-toets ingedrukt en druk op F11 op het toetsenbord om een Microsoft Visual Basic for Applications-venster te openen.

2. Klik op Invoegen>Module, en kopieer de VBA-code naar de module.

VBA: Graden, minuten en seconden omzetten naar decimale graad

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. Sla de code op en sluit dit venster. Selecteer een lege cel, bijvoorbeeld cel A1, en voer de volgende formule in:=ConvertDecimal("10° 27' 36"„") (waarbij „10° 27' 36""" staat voor de graad die u naar een decimale graad wilt omzetten; u kunt deze naar wens aanpassen). Druk daarna op de knop Enter. Zie schermafbeeldingen:

voer de formule inpijlresultaat van het converteren van graden, minuten en seconden naar decimale graden

Gerelateerde artikelen