Як перетворити десяткові градуси в градуси хвилин секунди в Excel?
Іноді у вас може бути список даних, що відображаються на аркуші як десяткові градуси, і тепер вам потрібно перетворити десяткові градуси у формати градусів, хвилин і секунд, як показано на наступних знімках екрана. Як швидко отримати розмову в Excel?
Перетворення десяткових градусів у градуси, хвилини, секунди за допомогою VBA
Перетворення градусів, хвилин, секунд у десяткові градуси за допомогою VBA
Перетворення десяткових градусів у градуси, хвилини, секунди за допомогою VBA
Виконайте наведені нижче дії, щоб перетворити десяткові градуси у градуси, хвилини та секунди за допомогою коду VBA.
1 Тримайся ALT і натисніть F11 на клавіатурі, щоб відкрити a Microsoft Visual Basic для програми вікна.
2. клацання Insert > Модуліта скопіюйте 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 Тримайся ALT і натисніть F11 на клавіатурі, щоб відкрити вікно Microsoft Visual Basic for Application.
2. клацання Insert > Модуліта скопіюйте 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. Збережіть код і закрийте вікно, виберіть порожню комірку, наприклад, комірку А1, введіть цю формулу = ConvertDecimal ("10 ° 27 '36" "") ("10 ° 27 '36" "" означає градус, який ви хочете перетворити в десятковий градус, ви можете змінити його, як вам потрібно), а потім натисніть Що натомість? Створіть віртуальну версію себе у кнопку. Дивіться скріншоти: