Skip to main content

Excel'de ondalık dereceleri derece dakika saniyeye nasıl dönüştürürüm?

Author: Sun Last Modified: 2025-06-10

Bazen, çalışma sayfasında ondalık derece olarak gösterilen bir veri listesi olabilir ve şimdi aşağıdaki ekran görüntülerinde gösterildiği gibi ondalık dereceleri derece, dakika ve saniye biçimlendirmesine dönüştürmeniz gerekiyor. Excel'de bu dönüşümü hızlıca nasıl yapabilirsiniz?

decimal degrees data arrow degrees minutes seconds data

VBA ile ondalık dereceleri derece, dakika, saniyeye dönüştürme

VBA ile derece, dakika, saniyeyi ondalık dereceye dönüştürme


arrow blue right bubble VBA ile ondalık dereceleri derece, dakika, saniyeye dönüştürme

Lütfen aşağıdaki adımları izleyerek VBA koduyla ondalık dereceleri derece, dakika ve saniyeye dönüştürün.

1. ALT tuşuna basılı tutun ve klavyeden F11'e basın, Microsoft Visual Basic for Application penceresini açmak için.

2. Ekle > Modül'e tıklayın ve VBA'yı modüle kopyalayın.

VBA: Ondalık dereceyi derece, dakika ve saniyeye dönüştürme

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. Çalıştırmak için Çalıştır düğmesine tıklayın veya F5'e basın.

4. Ekranda görüntülenen bir iletişim kutusu var ve dönüştürmek istediğiniz hücreleri seçebilirsiniz. Ekran görüntüsüne bakınız:

vba code to select the data to convert

5. Tamam'a tıklayın, ardından seçilen veriler derece, dakika ve saniyeye dönüştürülür. Ekran görüntüsüne bakınız:

original data arrow converting result

İpucu: Yukarıdaki VBA kodunu kullanmak orijinal verilerinizi kaybedebilir, bu yüzden kodu çalıştırmadan önce verileri kopyalamanız daha iyi olur.



arrow blue right bubble VBA ile derece, dakika, saniyeyi ondalık dereceye dönüştürme

Bazen, derece/dakika/saniye biçimlendirmesindeki verileri ondalık dereceye dönüştürmek isteyebilirsiniz, aşağıdaki VBA kodu size bunu hızlıca yapmanıza yardımcı olabilir.

1. ALT tuşuna basılı tutun ve klavyeden F11'e basın, Microsoft Visual Basic for Application penceresini açmak için.

2. Ekle > Modül'e tıklayın ve VBA'yı modüle kopyalayın.

VBA: Derece, dakika ve saniyeyi ondalık dereceye dönüştürme

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. Kodu kaydedin ve pencereyi kapatın, boş bir hücre seçin, örneğin A1 Hücresi, bu formülü girin =ConvertDecimal("10° 27' 36""") ("10° 27' 36""" ondalık dereceye dönüştürmek istediğiniz dereceyi temsil eder, ihtiyacınıza göre değiştirebilirsiniz), ardından Enter tuşuna tıklayın. Ekran görüntülerine bakınız:

enter the formula arrow result of converting degrees, minutes, seconds to decimal degrees

İlgili makaleler