Come convertire i gradi decimali in gradi minuti secondi in Excel?
A volte, potresti avere un elenco di dati mostrato come gradi decimali in un foglio di lavoro e ora devi convertire i gradi decimali in gradi, minuti e secondi formattando come mostrato nelle schermate seguenti, come puoi ottenere rapidamente la conversazione in Excel?
Converti i gradi decimali in gradi, minuti, secondi con VBA
Converti gradi, minuti, secondi in gradi decimali con VBA
Converti i gradi decimali in gradi, minuti, secondi con VBA
Seguire i passaggi seguenti per convertire i gradi decimali in gradi, minuti e secondi con il codice VBA.
1. Aspetta ALT pulsante e premere F11 sulla tastiera per aprire un file Microsoft Visual Basic per l'applicazione finestra.
2. Clic inserire > Modulie copia il VBA nel modulo.
VBA: converti i gradi decimali in gradi, minuti e secondi
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. Clic Correre pulsante o premere F5 per eseguire VBA.
4. Una finestra di dialogo viene visualizzata sullo schermo e puoi selezionare le celle che desideri convertire. Vedi screenshot:
5. Clic OK, quindi i dati selezionati vengono convertiti in gradi, minuti e secondi. Vedi screenshot:
Consiglio: Utilizzando il codice VBA sopra, i dati originali andranno persi, quindi è meglio copiare i dati prima di eseguire il codice.
Converti gradi, minuti, secondi in gradi decimali con VBA
A volte, potresti voler convertire i dati in gradi / minuti / secondi formattando in gradi decimali, il seguente codice VBA può aiutarti a farlo rapidamente.
1. Aspetta ALPulsante T e premere F11 sulla tastiera per aprire una finestra di Microsoft Visual Basic for Application.
2. Clic inserire > Modulie copia il VBA nel modulo.
VBA: converti gradi, minuti e secondi in gradi decimali
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. Salvare il codice e chiudere la finestra, selezionare una cella vuota, ad esempio la Cella A1, immettere questa formula = ConvertDecimal ("10 ° 27 '36" "") ("10 ° 27 '36" "" rappresenta il grado che si desidera convertire in gradi decimali, è possibile modificarlo in base alle proprie esigenze), quindi fare clic su entrare pulsante. Vedi screenshot: