Professional Documents
Culture Documents
1. Memegang ALT tombol dan tekan F11 pada keyboard untuk membuka
a Microsoft Visual Basic untuk Aplikasi jendela.
1
2 Sub ConvertDegree()
3 'Update 20130815
4 Dim Rng As Range
5 Dim WorkRng As Range
On Error Resume Next
6 xTitleId = "KutoolsforExcel"
7 Set WorkRng = Application.Selection
8 Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
9 For Each Rng In WorkRng
num1 = Rng.Value
10 num2 = (num1 - Int(num1)) * 60
11 num3 = Format((num2 - Int(num2)) * 60, "00")
12 Rng.Value = Int(num1) & "°" & Int(num2) & "'" & Int(num3) & "''"
13 Next
14 End Sub
15
4. Sebuah dialog ditampilkan di layar, dan Anda dapat memilih sel yang ingin
dikonversi. Lihat tangkapan layar
5. klik OK, maka data yang dipilih akan diubah menjadi derajat, menit dan detik.
Lihat tangkapan layar
jenis: Menggunakan kode VBA di atas akan kehilangan data asli Anda, jadi Anda
sebaiknya menyalin data sebelum menjalankan kode.
Terkadang, Anda mungkin ingin mengubah data dalam format derajat / menit /
detik hingga derajat desimal, kode VBA berikut dapat membantu Anda
menyelesaikannya dengan cepat.
1. Memegang ALT tombol dan tekan F11 pada keyboard untuk membuka jendela
Microsoft Visual Basic for Application.
1
2 Function ConvertDecimal(pInput As String) As Double
3 'Updateby20140227
4 Dim xDeg As Double
Dim xMin As Double
5 Dim xSec As Double
6 xDeg = Val(Left(pInput, InStr(1, pInput, "°") - 1))
7 xMin = Val(Mid(pInput, InStr(1, pInput, "°") + 2, _
8 InStr(1, pInput, "'") - InStr(1, pInput, _
9 "°") - 2)) / 60
xSec = Val(Mid(pInput, InStr(1, pInput, "'") + _
10 2, Len(pInput) - InStr(1, pInput, "'") - 2)) _
11 / 3600
12 ConvertDecimal = xDeg + xMin + xSec
13 End Function
14
3. Simpan kode dan tutup jendela, pilih sel kosong, misalnya Cell A1, masukkan
rumus ini = ConvertDecimal ("10 27 '36" "") ("10 27 '36" "" berdiri pada tingkat yang
ingin Anda ubah ke tingkat desimal, Anda dapat mengubahnya sesuai kebutuhan
Anda), lalu klik Memasukkan tombol. Lihat tangkapan layar: